В этом краткой статье показано, как проверить работающую оболочку, доступную оболочку в системе и как изменить оболочку по умолчанию в Linux.
Возможно, вы уже знаете, что в Linux и других Unix-подобных системах доступно несколько оболочек. Bash является оболочкой по умолчанию почти во всех дистрибутивах Linux, но есть и другие популярные оболочки, такие как:
- ksh
- zsh
- fish
- csh
- dash
Некоторые из оболочек предоставляют дополнительные функции более удобным для пользователя способом. Возьмите, например, оболочку fish. Он частично начинает показывать вам подсказки команд, основанные на вашей предыдущей набранной команде. Это очень удобно, если вы не хотите постоянно помнить ярлыки на терминале Linux.
Давайте посмотрим несколько способов смены оболочки в вашей системе Linux.
Как узнать оболочку по умолчанию?
Чтобы узнать, какая оболочка по умолчанию установлена для вас в вашей системе Linux, вы можете проверить переменную среды SHELL. Обычно оболочкой по умолчанию является bash, и она отображается так:
echo $SHELL /bin/bash
Как узнать, какую оболочку вы сейчас используете?
Не существует единого метода, который бы сообщал вам, какая оболочка используется со 100% точностью.
Вы можете попробовать либо echo $ 0, который показывает вывод, подобный этому:
echo $0 zsh
или проверьте процесс, используя ps -p $$ следующим образом:
ps -p $$ PID TTY TIME CMD 9625 pts/0 00:00:00 zsh
Как увидеть все оболочки, доступные в вашей системе Linux?
Все оболочки, доступные в ваших системах Linux, перечислены в файле /etc/shells. Вы можете использовать команду cat или less для просмотра содержимого файла.
# /etc/shells: valid login shells /bin/sh /bin/bash /bin/rbash /bin/dash /usr/bin/tmux /usr/bin/fish /bin/zsh /usr/bin/zsh
Как сменить оболочку на другую?
Если вы хотите использовать другую оболочку, вы можете просто ввести ее имя и войти в новую оболочку. Например, если вы хотите использовать Z Shell (zsh), вы можете использовать:
zsh
Вы можете ввести exit, чтобы выйти из новой оболочки и вернуться к предыдущей.
Как навсегда изменить оболочку по умолчанию в Linux?
Предположим, вам очень понравилась оболочка Fish, и вы хотите использовать ее в качестве оболочки по умолчанию, чтобы каждый раз, когда вы открываете терминал или используете ssh для входа в систему, вы использовали ее вместо оболочки bash по умолчанию.
Linux позволяет изменить оболочку по умолчанию с помощью команды chsh. Лучший способ изменить оболочку по умолчанию для вашего вошедшего в систему пользователя – указать имя оболочки, указанное в файле /etc/shells, с параметром -s.
chsh -s /usr/bin/fish
Вы должны выйти из системы, чтобы изменения вступили в силу, иначе вы будете думать, что запуск chsh не изменил оболочку.
Вы заметили, что мы должны были указать полный путь, как он был указан в файле /etc/shells? Если бы мы использовали chsh -s fish, это дало бы нам ошибку типа «chsh: fish is an invalid shell».
Какая оболочка нравится вам?
Мы надеемся, что эта небольшая статья помогла вам изменить оболочку в Linux. Если вы подумали об изменении оболочки по умолчанию, возможно, вы используете что-то другое, чем оболочка bash. Какая это оболочка? Почему вы предпочитаете ее другим?
Делитесь своими взглядами в комментариях ниже.