Terminal.app имеет Оболочки, открытые с установкой с оболочкой входа в систему По умолчанию (/usr/bin/login) и Командой (полный путь) (который по умолчанию содержит/usr/bin/bash как путь), опции.
Из поля опция я нахожу выбранными, оболочка входа в систему По умолчанию (/usr/bin/login).
Каково различие между/usr/bin/login и/usr/bin/bash? Которым должен быть, выбирают как оболочка по умолчанию?
/usr/bin/login не оболочка; это - программа, используемая для входа в систему в систему. Это справляется с процессом входа в систему. Как пользователь правильно настроенной системы, Вам никогда не придется интересоваться/usr/bin/login. Если Вам любопытно на предмет этого так или иначе, читать
man login
Оболочка выполняется после того, как процесс входа в систему завершился. Это дает пользователю основанный на тексте интерфейс командной строки средствам операционной системы, включая запущение других программ./usr/bin/bash является хорошим выбором для оболочки по умолчанию. Можно читать больше об ударе путем выполнения
man bash
Обе из тех команд человека могут быть выполнены при приглашении оболочки.
Они - две совсем других вещи, и только общность - то, что и обычно выполняемый в начале входа в пользователя и оба выполняет точечный файл конфигурации (.login и .bashrc), которые являются essencially сценариями оболочки. Кроме того, удар, как много современных оболочек, также позволяет Вам переключаться между пользователями, который является одной из основных целей login
Подробно:
вход в систему является программой, используемой для входа в систему пользователя, в конце которого выполняется оболочка (иначе интерпретатор командной строки).
вход в систему только знает, как сделать, одна вещь - входит в систему пользователь (athenticate имя пользователя/пароль использования, установите некоторые переменные окружения как ТЕРМИН и ПУТЬ, и выполнитесь, несколько задач администрирования на входе в систему - видят ссылку для деталей.
Оболочка Unix (которых удар является примером) является интерпретатором командной строки вместе с интерпретатором сценария, и его функция состоит в том, чтобы принять вход (от пользователя или предоставленный программно) и выполнить требуемые команды.
Насколько я знаю, вход в систему не может использоваться в качестве оболочки вообще, поскольку он не имеет никакой функциональности интерпретатора командной строки.
% man login
login is used when signing onto a system. It can also be used to
switch from one user to another at any time (most modern shells have
support for this feature built into them, however).
% man bash
Bash is an sh-compatible command language interpreter that executes
commands read from the standard input or from a file.
таким образом, если необходимо выбрать одну оболочку из двух данных вариантов, это - ясно удар.