linux 有多个shell

来源:互联网 发布:知乎关注最多的话题 编辑:程序博客网 时间:2024/04/30 02:58

shell是用户和内核之间交互的通道。


我们常常提到的 shell 其实是比较狭隘的定义,一般来说,在 Linux 里头,所谓的 shell 就是指 BASH 这

个文字模式的 shell 啰。但是,广义的 shell 也可以是 KDE 之类的图形接口控制软件呢! 因为他也可

以帮我们与 kernel 进行沟通啊!


那么目前我们的 Linux (以 FC4 为例) 有多少我们可以使用的 shells 呢? 你可以检查一下 
/etc/shells 这个档案,至少就有底下这几个可以用的 shells:  
•  /bin/sh (已经被 /bin/bash 所取代)  
•  /bin/bash (就是 Linux 预设的 shell)  
•  /bin/ksh (Kornshell 由 AT&T Bell lab. 发展出来的,兼容于 bash)  
•  /bin/tcsh (整合 C Shell ,提供更多的功能)  
•  /bin/csh (已经被 /bin/tcsh 所取代)  
•  /bin/zsh (基于 ksh 发展出来的,功能更强大的 shell) 、



由上面的说明中,我们大概可以发现,其实各主要 shell 的功能都差不多, 有的只是语法上面的不同而
已。目前一般的使用者使用习惯上,似乎是以 bash 及 csh 为主要的两个 shell 。OK!这么多的 shell 我
要使用哪一个啊?呵呵!使用 Linux 支持最广泛的 bash 就好了! 不要想太多!另外,咦!为什么我们
系统上的 shell 要写入 /etc/shells 这个档案啊? 这是因为系统某些服务在运行过程中, 会去检查使
用者能够使用的 shells ,而这些 shell 的查询就是藉由 /etc/shells 这个档案啰! 

0 0
原创粉丝点击