chsh用于修改登陆后的shell,每个用户都有独立的shell。
以下是chsh命令的常用操作:
一、查看本机安装了哪些shell
chsh -l
二、查看当前用户正在使用的Shell
echo $SHELL
三、修改当前用户的shell
chsh -s /usr/bin/fish
由下图可知,hadoop用户之前的shell是/bin/bash,现将其shell改为/usr/bin/fish,然后再echo $SHELL,发现其shell并没有改变,而实际上它的shell已经改变了,本次登陆后echo $SHELL的值是上次登陆时设置的shell。
那么我们如何检查自己是否已经设置shell成功呢?
还有一种办法:查看/etc/passwd文件。/etc/passwd文件是linux系统用于存放用户信息的地方,相当于花名册,该文件包含了用户的用户名、经过加密的密码、UID(用户的标识)、GID(用户所在组的标识)、用户详细信息、用户的主目录(/home/用户名/)、用户登陆后的shell。
通过以上命令,我们发现hadoop用户的shell确实已经被设置成了/usr/bin/fish。