Что такое оболочка по умолчанию для терминала?

Допустим, я открыл терминал и ввел / выполнил некоторые команды оболочки.

Но я не вызывал явно Bash или любую другую оболочку.

Какая оболочка использовалась по умолчанию?

52
задан 13 July 2015 в 20:31

5 ответов

Тот, который указан в вашей строке в /etc/passwd (это разделенная строка :, а оболочка - последняя).

Например, мой:

chris:x:1000:1000:Chris,,,:/home/chris:/bin/bash

Здесь это /bin/bash (Ubuntu по умолчанию)

Вы также можете использовать chsh:

$ chsh
Password: 
Changing the login shell for chris
Enter the new value, or press ENTER for the default
        Login Shell [/bin/bash]:

Это говорит мне о том, что моя оболочка /bin/bash и позволяет мне ее менять.

Наконец, echo $SHELL будет делать то же самое:

$ echo $SHELL
/bin/bash
0
ответ дан 13 July 2015 в 20:31

Чтобы получить путь к файлу текущего исполняемого файла оболочки, можно использовать

readlink -f /proc/$/exe

Некоторые возможные выходные данные:

  • /bin/bash
  • /usr/bin/bash [ 116]
  • /usr/bin/zsh
  • /home/stan/.linuxbrew/Cellar/zsh/5.2/bin/zsh
0
ответ дан 13 July 2015 в 20:31

ввод следующего отобразит то, что окружает терминал, открытый с:

echo $SHELL

Однако для обнаружения, что окружает Вас, в настоящее время находятся в (Вы, возможно, изменили его), тип

ps -p $$

например, Вы будете видеть, что оболочка, избивают вывод в качестве примера

  PID TTY          TIME CMD
 3500 pts/0    00:00:01 bash

Другой метод должен использовать

echo $0

это просто возвратит название текущей оболочки.

14
ответ дан 13 July 2015 в 20:31

По умолчанию это bash:

env | grep ^SHELL=

В большинстве случаев будет выдавать

SHELL=/bin/bash
0
ответ дан 13 July 2015 в 20:31

GNU Bash - это оболочка, используемая по умолчанию в терминалах в Ubuntu. Однако, когда сценарии выполняются при загрузке системы, используется тире, так как это тире /bin/sh.

Это определено в переменной окружения $ SHELL. Вы можете проверить, набрав echo $SHELL в терминале.

0
ответ дан 13 July 2015 в 20:31

Другие вопросы по тегам:

Похожие вопросы: