На OSX, с файлом .command вроде

#!/bin/bash
cd /Volumes/Volume/Path &&
executable --some "arg"

когда я завершаю исполняемый процесс (с помощью CTRL-C), есть ли способ оставить сеанс CLI живым? Т.е. он возвращается к приглашению в /Volumes/Volume/Path .

.Command открывается в iTerm2 и выполняется как

/Volumes/Volume/OtherPath/some.command; exit;

Чтобы упростить, просто

cd /Volumes/Volume/Path

также существует сессия. Есть ли перерыв или что-нибудь, что может помешать exit;?

Я пытался закрепить

... &&
$SHELL

(с (вне) exec перед $SHELL), но это ничего не сделало. Также попытался закрепить set noclobber , set noclobber=1 , exit 0 , exit 1 и pwd .

2 ответа2

0

Решено путем прикрепления

open -a iTerm " cd . "

и создание iTerm закрытых (недолговечных) сеансов.

Если кто-нибудь знает о более элегантном решении, которое включает в себя оболочку и не запускает iTerm с аргументами, добавьте!

-1
#!/bin/bash
cd /Volumes/Volume/Path && executable --some "arg" &

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .