1

В OS X вы можете добавить оболочку в /etc /shells и установить ее как оболочку пользователя по умолчанию, чтобы при открытии терминала они были представлены с этой оболочкой. Кроме того, у вас есть возможность открыть все новые вкладки терминала в том же каталоге, что и текущая выделенная вкладка, это достигается путем отправки pwd в приложение терминала через функцию, встроенную в приглашение, и новой вкладке, передающей эту информацию в логин или bash. У меня вопрос, как эта информация передается в логин или bash в качестве аргументов? Переменная env?

Причина, по которой я хочу знать, состоит в том, что оболочки, поставляемые с OS X, не показывают cd /path/to/last/dir который является первым запуском команды, когда вы открываете вкладку (с нужными настройками dir) при использовании оболочка, которая не поставляется с OS X (например, современный bash), и я хотел бы найти способ повторить это в моей настройке.

На терминале работает один /usr/local/bin/bash --noediting -i и на каждой вкладке работает следующее:

login -pf camdennarzt -bash

и если вы используете оболочку, которая не поставляется с OS X, то первая команда запускается cd /path/to/last/dir но она запускается в ответ на приглашение, как команда была набрана. И если вы используете включенную оболочку, каталог все еще изменяется, но команда, которая делает это, не отображается.

/etc/bashrc_Apple_Terminal похоже, связан.

В Sierra это показывает, что оболочка запускается как: login -pfl camdennarzt /bin/bash -c 'exec -la bash /usr/local/bin/bash' и проблема исчезла, так что это может быть связано.

0