chsh 命令详解

| 选择喜欢的代码风格  

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

chsh 命令安装:


-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 命令补充说明:


chsh 命令将接受系统上任何可执行文件的完整路径名。 但是,如果 Shell 未在 /etc/shells 文件中列出,它将发出警告。

它也可以配置为仅接受此文件中列出的 shell(除非用户是 root 用户)。 如果未指定 shell,则 chsh 将提示指定一个 shell。

chsh 命令语法:


chsh [-s login_shell] [user]

chsh 命令选项:


-s<shell 名称>或--shell<shell 名称>:更改系统预设的 shell 环境。
-l或--list-shells:列出目前系统可用的 shell 清单;
-u或--help:在线帮助;
-v或-version:显示版本信息。

chsh 命令参数:


用户名:要改变默认 shell 的用户。

chsh 命令实例


查看系统安装了哪些 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

chsh 命令扩展阅读:




chsh 命令评论