Перейти к содержимому

Остановить `выход` из бега

0

Когда я запускаю терминал в Pathfinder, ввод текста exitявляется просто ошибкой (блокирует окно ни за что).

Как я могу

  1. Выяснить, я в Pathfinder
  2. Подавить exitв Zshell, если я в Pathfinder?
283 просмотра
Dan Rosenstark спросил 11 лет назад
D 3 618

1 ответ

2
Принятый ответ

exitявляется встроенным в Zsh . Самый простой способ отключить его - или любую другую команду - это создать псевдоним с тем же именем, который ничего не делает:

alias exit= 

или, может быть, печатает короткое сообщение, чтобы быть немного более информативным:

alias exit='echo "Sorry, but I cannot do that."' 

Чтобы запустить это автоматически для сеансов оболочки внутри Pathfinder, установите его в поле «Выполнить команду» в настройках Pathfinder.


Примечание: псевдоним всегда ограничен сеансом zsh, в котором он был определен. Он не будет перенесен на любой другой сеанс zsh, который вы начинаете с этого момента, поэтому exitвсе эти сеансы будут работать нормально. Кроме того, псевдонимы, установленные в дочернем сеансе zsh, не будут перенесены в родительский сеанс.

Это также означает, что вы не можете просто запустить скрипт, чтобы установить псевдонимы или внести другие изменения в текущую среду оболочки. Но вы можете использовать sourceкоманду для выполнения команд из сценария в текущем сеансе оболочки.

Вместо установки alias exit=в «Выполнить команду» вы можете установить следующее (как отмечено в комментарии ОП):

source /path/to/some/script_with_settings 

с /path/to/some/script_with_settingsсодержанием:

alias exit= 

возможно среди прочего.

Как это изменится, если я захочу поместить это в скрипт?

Dan Rosenstark · 11 лет назад · 0

source path / to / script сработало ...

Dan Rosenstark · 11 лет назад · 0
Adaephon ответил 11 лет назад
A 3 154