Выполните команду bash в новой оболочке и оставайтесь в новой оболочке после выполнения этой команды
У меня проблема. Я долго ищу этот ответ - как я могу запустить команду в новой оболочке bash и остаться в этой новой оболочке после выполнения этих команд. Так, например:
bash -c "export PS1='> ' && ls"
создаст новую оболочку, экспортирует PS1, списки каталогов и... выйдет в мою текущую оболочку. Я хочу остаться в новом.
Ответы
Ответ 1
Вы можете добиться чего-то подобного, злоупотребляя опцией --rcfile
:
bash --rcfile <(echo "export PS1='> ' && ls")
Из bash manpage:
- файл rcfile
Выполнять команды из файла вместо файла инициализации системы /etc/ bash.bashrc и стандартного файла личной инициализации ~/.bashrc, если оболочка является интерактивной
Ответ 2
Леновый:
bash -c "export PS1='> ' && ls; bash"