A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
-bash: chsh command not found #Debian apt-get install passwd #Ubuntu apt-get install passwd #Alpine apk add util-linux #Arch Linux pacman -S util-linux #Kali Linux apt-get install passwd #CentOS yum install util-linux-ng #Fedora dnf install util-linux-user #OS X brew install util-linux #Raspbian apt-get install passwd #Docker docker run cmd.cat/chsh chsh
chsh 命令将接受系统上任何可执行文件的完整路径名。 但是,如果 Shell 未在 /etc/shells
文件中列出,它将发出警告。
它也可以配置为仅接受此文件中列出的 shell(除非用户是 root 用户)。 如果未指定 shell,则 chsh 将提示指定一个 shell。
chsh [-s login_shell] [user]
-s<shell 名称>或--shell<shell 名称>:更改系统预设的 shell 环境。 -l或--list-shells:列出目前系统可用的 shell 清单; -u或--help:在线帮助; -v或-version:显示版本信息。
用户名:要改变默认 shell 的用户。
查看系统安装了哪些 shell 的两种方法:
root @ CommandNotFound in / [17:05:43] $ chsh -l /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bin/bash /usr/sbin/nologin /bin/zsh #其实 chsh -l 也是来查看这个文件。 root @ CommandNotFound in / [17:05:46] $ cat /etc/shells /bin/sh /bin/bash /sbin/nologin /usr/bin/sh /usr/bin/bash /usr/sbin/nologin /bin/zsh
查看当前正在使用的 shell:
#注意SHELL一定要是大写。可以看到,目前使用的 shell 是 /bin/zsh root @ CommandNotFound in / [17:06:37] $ echo $SHELL /bin/zsh #把我的 shell 改成 CentOS 默认的 Bash: chsh -s /bin/bash