Как найти мою версию оболочки с помощью команды linux?
Я хотел бы узнать о моей версии оболочки, используя команду Linux. Я пробовал следующую команду, но он показывает тип оболочки, в которой я находится.
Команда:
echo $SHELL
Результат:
/bin/bash
Ответ 1
Это будет сделано:
$SHELL --version
В моем случае вывод:
zsh 5.0.2 (x86_64-pc-linux-gnu)
Ответ 2
Это зависит от того, хотите ли вы узнать версию используемой по умолчанию оболочки входа в систему или версию оболочки, которую вы используете в данный момент. Они не обязательно одинаковы.
Как указано в принятом ответе, для вашей оболочки входа по умолчанию $SHELL --version, вероятно, будет работать. Большинство (но не все) оболочки принимают опцию --version. (dash этого не делает.) И это предполагает, что значение $SHELL не изменилось (могут быть веские причины для этого).
Для оболочки, которую вы сейчас используете, если это bash, вы можете набрать:
echo $BASH_VERSION
Для tcsh:
echo $version
Для zsh:
echo $ZSH_VERSION
echo $ZSH_PATCHLEVEL # shows more detailed information
Для ksh:
echo $KSH_VERSION
Для fish:
echo $version
Опять же, это предполагает, что соответствующая переменная не была изменена (редко есть не злонамеренная причина для ее изменения).
Bash, в частности, имеет переменную-массив $BASH_VERSINFO, которая дает больше информации в форме, которую легче обрабатывать программно. Печать $BASH_VERSINFO печатает только первый элемент; распечатать все элементы: