Задать вопрос

Вопрос для знающих толк bash скриптах

Требуется из bash скрипта изменить значение переменных: PATH и друге. Вроде все должно работать, а не работает.

#!/bin/bash

export PATHMY="text"
export PATH="$PATH:/home/myname/test"

выполняю

echo $PATHMY

Пусто, в других переменных тоже нет изменений.

Этот же код добавил в .profile, логинюсь по новой и переменные на месте.

Как получить изменения без выхода из системы?

Ubuntu 11.04 x32

UPD: Возможно есть решение на perl или на чем-то другом — тоже будет не плохо.
  • Вопрос задан
  • 7070 просмотров
Подписаться 2 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 8
ivnik
@ivnik
Запускайте скрипт так:

 . ./script.sh
Ответ написан
astrobeglec
@astrobeglec
В файл ~/.bashrc
Добавляй строки:
PATHMY="text"
PATH="$PATH:/home/myname/test"

Каждая новая сессия bash будет использовать эти переменные, глобально объявить — тоже, но в /etc/bash.bashrc
В текущей сессии набей эти команды в консоли или убери export из скрипта.
Ответ написан
Комментировать
icc
@icc
1. Через export переменные изменяются только в рамках данной сессии.
2. Поэтому нужно прописывать в .profile или bash.rc.
Ответ написан
pomeo
@pomeo
:~$ source script.sh
Ответ написан
4dmonster
@4dmonster
а резве не так надо?
PATHMY="text"
export $PATHMY
Ответ написан
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
Опишите нормально стоящую перед Вами задачу, пожалуйста. тогда можно будет подумать как решить проблему
Ответ написан
bhavenger
@bhavenger
Не плодите лишних сущностей, объявляйте переменную в самом скрипте:

PATHMY="text"
PATH="$PATHMY:/home/myname/test"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы