'определение источника' от подсказки удара

У меня есть немного сценария, который устанавливает мой прокси в масштабе всей системы сразу, он называет gconftool-2, устанавливает прокси в ~/.ssh/config и устанавливает прокси для Кв. Это все относительно просто. Настоящая проблема возникает в обновлении моих рабочих сессий удара.

Возможно выполнить команду от подсказки ($PS1, $PROMPT_COMMAND, даже привязка входит в команду) - но они все выполняются как отдельные команды - и следовательно не имеют никакого влияния на мою текущую среду. Вместо того, чтобы выполнить эти команды, я хотел бы получить их.

Даже это не работает:

export PS1="\$(source /etc/profile.d/proxy.sh)$ "

Я понимаю, почему это не работает (я думаю), но как я могу обойти его?

спасибо Mark

2
задан 29.06.2010, 00:42

1 ответ

Причина, что Вы показываете, не работает, как Вы, возможно, подозревали, то, что $() создает подоболочку. Изменения в подоболочке не сохраняются к родителю и, как Вы говорите, не имеете никакого влияния на свою текущую среду. Однако PROMPT_COMMAND может сделать то, что Вы хотите, не создавая подоболочку:

export PROMPT_COMMAND='source /etc/profile.d/proxy.sh'
2
ответ дан 11.12.2019, 22:37

Теги

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