- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Shell 环境的概述
一、 Shell 的作用及常用种类
Shell 是一个特殊的应用程序,它介于操作系统内核与用户之间,负责接收用户输入的
操作指令(命令)并进行解释,将需要执行的操作传递给内核执行。因此,Shell 程序在系
统中充当了一个“命令解释”的角色。例如,微软公司的 Window XP Windows Sepver2003
等操作系统中 cmd.exe 的就属于 Shell 程序。
Bsh: bsh 是 Bourne Shell 的缩写,最初由 Stephen R.Bourne20 世纪 70 年代中期在新泽西
的ATT 贝尔实验室编写而成,因此以Bourne 的名字进行命名。Bsh 是产生较早的UNIX
Shell 程序,实现了最基本的命令解释器功能,同时还可以作为脚本编程语言。
Csh :Csh 是 C Shell 的缩写,因使用 C 语言的语法风格而得名,由 Bill Joy 于 20 世纪
80 年代早期在 Berkeley 的加利福尼亚大学开发完成。Csh 在用户的命令行交互界面上
进行了很多改进,并增加了命令历史,别名,文件名替换,作业控制等功能。因此与
Bsh 相比,Csh 更加适用于为用户提供命令交互操作。
Ksh :Ksh 是 Kom Shell 的缩写,由ATT 贝尔实验室的David Kom 开发完成,因此以
Kom 命名。Ksh 是在 Bsh 和 Csh 之后出现的,它结合了 Bsh 和 Csh 两者的功能优势,
兼具 Bsh 的语法和 Csh 的交互特性,因此受到用户的广泛欢迎。
Bash :Bash 是 Bourne Again 的缩写,从Bash 的全名就可以看出,Bash 是 Bsh 的升级
替代品。Bash 是 GNU 项目的成员,也是著名的开源软件项目。目前大多数 Linux 版本
(包括Red Hat 公司的 Linux 系统)都使用 Bash 作为默认的 Shell,当运行 Shell 程序
时系统实际运行的是Bash 程序。
Zsh :Zsh 是更多地基于交互式操作考虑进行设计的 Shell 程序,集成 了Bash Ksh 等多
种 Shell 程序的优点,能够提供更高的交互操作效率(例如更易用的 Tab 键自动补齐功
能等),受到越来越多的 Linux 用户的喜欢。
使用不同的 Shell 解释器程序时,其内部指令,命令行提示符等方面会存在一些区别。,用
户可以根据实际应用需要和个人习惯自行选择 Shell 程序。
二、 Shell 环境的切换
为了提高系统的兼容性,在 RHEL6 系统中提供了对各种常见 Shell 程序支持,通过配
置文件/etc/shells 可以了解系统所支持的 Shell 程序的路径。
例:查看当前 Linux 系统中能够使用的 Shell 程序列表。
其中有一部分 Shell 程序实际上是其他 Shell 程序符号链接文件,这样做是为了更好的提供
Shell 程序之间的兼容性,例如:tcsh 是 csh 的兼容升级版本,因此在系统运行csh 时将直接
运行 tcsh 。
用户在执行 Linux 命令操作的过程中,若希望使用其他的 Shell 程序环境,可以进行相应的
切换。
1. 临时切换至新的 Shell 环境
直接输入其他 Shell 程序的名称(或完整路径)即可以切换到新的 Shell 环境,新运行的 Shell
程序作为当前 Shell 程序的子进程,需要返回到原来的 Shell 环境时可以执行 exit 命令(大
多数 Shell 环境都支持此内部指令)或者按 Ctrl+D 快捷键。
例:切换到 tcsh 程序的环境,并验证是否还能使用 help 内部指令和外部指令ls 。
# tcsh
2 .更改用户自己的登录 Shell
用户每次登录到 Linux 系统时系统自动加载的 Shell 程序即为该用户的登录 Shell,用户
的登录 Shell 信息记录在/etc/passwd 文件中,并允许用户通过 chsh 命令进行修改。
例:使用 teacher 用户登录系统,并将自己的登录 Shell 更改为 tcsh 。
使用 chsh 命令设置了新的登 Shell 录后,新的登录 Shell 将在该用户下一次登录系统时生效。
3 . 由管理员(root)更改其他用户的登录 Shell
root 用户可以通过直接修改/etc/pas
文档评论(0)