Linux常用shell种类

Linux常用shell种类

不同的shell具备不同的功能,shell还决定了Linux中默认的shell是/bin/bash,流行的shell有ash、bash、ksh、csh、zsh等,不同的shell都有自己的特点以及用途。

查看自己的服务器支持什么shell

# cat /etc/shells

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

# chsh -l

/bin/sh

/bin/bash

/sbin/nologin

/usr/bin/sh

/usr/bin/bash

/usr/sbin/nologin

查看当前的shell

# echo $SHELL

/bin/bash

bash大多数Linux系统默认使用的shell,bash shell是Bourne shell 的一个免费版本,它是最早的Unix shell,bash还有一个特点,可以通过help命令来查看帮助。包含的功能几乎可以涵盖shell所具有的功能,所以一般的shell脚本都会指定它为执行路径。cshC shell 使用的是“类C”语法,csh是具有C语言风格的一种shell,其内部命令有52个,较为庞大。目前使用的并不多,已经被/bin/tcsh所取代。kshKorn shell 的语法与Bourne shell相同,同时具备了C shell的易用特点。许多安装脚本都使用ksh,ksh 有42条内部命令,与bash相比有一定的限制性。

看看相应的目录中有无ksh

# ls /bin/ksh

如果命令安装就成了。

# yum install ksh查看# ll /bin/kshlrwxrwxrwx 1 root root 21 May 8 09:26 /bin/ksh -> /etc/alternatives/ksh

tcshtcsh是csh的增强版,与C shell完全兼容。sh是一个快捷方式,已经被/bin/bash所取代。nologin指用户不能登录zsh目前Linux里最庞大的一种shell:zsh。它有84个内部命令,使用起来也比较复杂。一般情况下,不会使用该shell。

改变shell

当前用户改变自己的shell(普通用户也可以执行)

[root@localhost ~]# chsh #必变当前用户的shell

Changing shell for root.

New shell [/bin/bash]: /bin/csh #输入新的shell地址

Shell changed.

[root@localhost ~]# chsh -s /bin/csh #改变当前用户shell,设置为 /bin/csh

Changing shell for root.

Shell not changed.

还有一种方法,需要管理员权限

# usermod -s /bin/sh xu

💡 关键要点

不同的shell具备不同的功能,shell还决定了Linux中默认的shell是/bin/bash,流行的shell有ash、bash、ksh、csh、zsh等,不同的shell都有自己的特点以及用途

更多疯狂内容

英雄联盟韦鲁斯苍穹之光皮肤多少钱
微信个人简历怎么做?快速制作技巧有哪些?
switch2价格

switch2价格

🔥 692 📅 11-26