Как подсказка изменения подоболочки

Я предложил бы, чтобы Вы использовали scp который идет с каждым дистрибутивом Linux. Это называют безопасной копией.

$ scp -r folder-to-copy location-of-copy

8
17.08.2013, 00:23
2 ответа

Я думаю, что можно создать подоболочку с другой подсказкой как это:

$ bash --rcfile <(echo "PS1='subshell prompt: '") -i

Пример

Текущий ENV:

$ bash --rcfile <(echo "PS1='subshell prompt$ '") -i

В оболочке sub:

subshell prompt$ echo hi
hi
subshell prompt$ exit
exit

Назад к исходной оболочке:

$ 
7
27.01.2020, 20:12
  • 1
    Можно использовать a here string вместо замены процесса. например, <<< "PS1...". –  jordanm 17.08.2013, 04:25
  • 2
    @jordanm - можно ли обеспечить пример? Я бездельничал с этим, но не мог получить рабочий пример с помощью здесь строки. –  slm♦ 17.08.2013, 07:16

Причина это не работает, могла бы состоять в том потому что при загрузке оболочки (который должен быть, например: /bin/bash), это закончит тем, что перезагрузило свои конфигурационные файлы, которые включают переменные среды для подсказки (например: $HOME/.bashrc) будучи переданным переменные среды Вы хотите - таким образом, Ваши переменные отбрасываются.

Вы могли бы хотеть проверить опции оболочки загрузить файлы пользовательской конфигурации (например: --rcfile в Bash IINM) и использование они, а также \env передать переменные среды, которые Вы хотите. Проблема состоит в том, что, после того как Вы, то увольнение подоболочки становится иждивенцем оболочки.

(ПРИНЦИП "КАЧЕСТВО НА РИСК ПОКУПАТЕЛЯ": Я не полагаю, что это ответ все же - в частности, я еще не попробовал ни одного из этого в моей системе.)

2
27.01.2020, 20:12

Теги

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