Командная оболочка или командный интерпретатор в Linux — это программа, которая в текстовой среде выступает в качестве интерфейса между пользователем и операционной системой. Она интерпретирует вводимые команды с терминала и вызывает необходимые программы.
При работе в терминале именно командная оболочка обрабатывает вводимые команды. Более того, оболочки Linux поддерживают написание программ на языке оболочки.
Оболочки Linux
Одна из самых популярных командных оболочек — это оболочка Bash (Bourne Again Shell). Она используется по умолчанию в большинстве дистрибутивов Linux.
Существуют разные оболочки Linux:
Все оболочки отличаться друг от друга функциональностью, синтаксисом команд, строкой приветствия, дружелюбностью к пользователю и другими параметрами и возможностями.
Как определить текущую командую оболочку
Есть несколько способов определить оболочку, используемую по умолчанию в вашей системе Linux. Рассмотрим несколько из них, так как в разных системах (и оболочках) какие-то способы могут не сработать.
Способ #1
echo $SHELL
Способ #2
Можно воспользоваться командой echo $0
. Данная команда выведет на экран имя текущего работающего процесса, внутри которого она выполнена. Так как мы выполняем команду внутри оболочки, то будет выведено имя оболочки.
echo $0
Способ #3
Определим, работающий процесс оболочки командой ps
:
ps -p $$
Способ #4
grep ваш_пользователь /etc/passwd
Как посмотреть список оболочек, доступных в системе
Список оболочек, которые в данный момент установлены и доступны в системе Linux, хранится в файле /etc/shells
Выведем содержимое файла /etc/shells
, для этого воспользуемся командой cat
:
cat /etc/shells
Результат примерно такой:
/bin/sh /bin/bash /usr/bin/bash /bin/rbash /usr/bin/rbash /bin/dash /usr/bin/dash /bin/zsh /usr/bin/zsh /usr/bin/fish
Вы можете найти полный путь к своей оболочке, используя следующую команду:
type -a bash
type -a zsh
type -a ksh
Как временно переключиться на другую оболочку
Чтобы временно переключиться на другую оболочку, достаточно выполнить в терминале команду, соответствующую ее имени. После этого вы переключитесь на новую оболочку.
Например, переключимся на оболочку sh
. Выполняем команду:
sh
Как изменить оболочку на постоянной основе
Для изменения командной оболочки на постоянной основе служит команда chsh
(от слов change shell
).
Чтобы изменить оболочку текущего пользователя:
chsh -s путь_до_новой_оболочки
chsh -s {shell-name-here}
chsh -s {shell-name-here} {user-name-here}
chsh -s /bin/bash
chsh -s /bin/bash vanay
Например, изменим оболочку на sh
. Для этого выполняем команду (при выполнении команды нужно будет ввести пароль):
chsh -s /bin/sh
Затем нужно перелогинится:
su - $USER
su - [имя пользователя]
Комментарии (0)
Пока еще не было комментариев ✍️