- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四Shell的使用
实验四 Shell的使用
实验目的:
掌握什么是shell
掌握shell环境变量的设置和使用
掌握bash的基本操作方式
掌握shell的输入输出
掌握简单的shell脚本编辑方法
实验环境:
计算机实验室单机环境下的Linux
个人PC中的Linux或Linux虚拟机
学习过程与实验内容
什么是shell
● 用户与Linux的接口
● 命令解释器
● 支持多用户
● 支持复杂的编程语言
● Shell有很多种,如:csh,tcsh,pdksh,ash,sash,zsh,bash等。Linux的缺省Shell为bash(Bourne Again Shell)。
Shell是用户和操作系统之间最主要接口。通过Shell,可以同时在后台运行多个应用程序,并且在把需要与用户交互的程序放在前台运行。
通过在多条命令的序列中使用变量和流程控制,Shell可以作为一名复杂的编程语言。
学习shell的目的是为了更深入地学好Linux及更好地管理好主机。Shell在文字界面下工作,在远程联机时,文字界面的传输速度较快,而且不容易出现断线或者信息外泄的问题。Shell是很有必要学习的一个工具,它可以让您更进步了解Linux,而不是只会按按鼠标。特别是在维护主机显得尤为重要。此外,要管理好主机,良好的shell编程知识是必要的。
BASH Shell(Bourne shell 简称bash)
BASH目前是GNU操作系统中标准的shell,它主要兼容于sh,并依据一些用户需求而加强,可以说目前几乎所有的Linux版本都是使用bash作为管理核心的主要shell。BASH主要优点有:
命令编辑能力
bash中相当棒的一个功能是它能记忆使用过的指令,只要在命令行中按上下键就可以找到输入的前一个指令。RedHat默认的指令记忆功能可以达到1000个,记录在用户的根目录的.bash_history中。不过,需要留意的是,~/.bash_history记录的是上一次登录以前执行过的指令,至于这一次登录执行指令都被暂存在内存中,当用户成功注销系统后,该指令记忆才会记录到.bash_history中。
补全功能(比对数据正确性)
这个功能也相当棒,主要分为指令补全与文件名称补全。
指令补全:用在执行命令时不想按太多的按键的时候。例如指令passwd,在输入pass之后按下Tab键,bash马上会自动将后面的wd接上来。如果有重复的指令呢?按下两次Tab键会把所有重复的指令都列出来。如按下ch之后按下两次Tab键,再按下两次Tab键后会发现以ch开头的命令都显示出来了。另外直接在提示符后连按两次Tab键,系统会将所有可以使用的指令都列出来。
文件名称补全:如果你用vi读取某个文件,例如/etc/man.config,你可以在输入vi /etc/man.之后直接按下Tab键,那么该文件名称会被自动补全。
命令别名(alias)设定功能
要实现自定义命令可以使用alias,在命令行输入alias就可以知道当前的命令别名都有哪些。也可以直接输入下列命令来设定别名,如用lm来代替ls -al 命令为:alias lm=’ls -al’。
作业控制、前台后台控制????????????
使用前台、后台控制可以让工作更顺利。作业控制的用途则更广,可以让我们随时将作业放到后台中执行,而不用怕不小心使用了Ctrl+C关掉该程序。此处,还可以在单一登录的环境中达到多任务的目的。
Shell scripts的强大功能
DOS中有将一堆指令写在一起的所谓的“批处理文档”,Linux下的shell scripts则具有更强大的功能,可以将你需要频繁输入的连续指令写成一个文件,该文件通过交互方式进行主机的检测工作。也可以藉由shell提供的环境变量及相关指令编写一个小型的程序语言,这样,以前在DOS下只有程序语言才能写的东西,在Linux下使用简单的shell scripts就可以完成。
在了解了BASH的优点之后,来谈谈如何在Shell环境中输入指令。其实很简单,输入指令的方式为:
# command [-options] parameter1 parameter2 …
指令 选项 参数1 参数2 等等
command为指令的名称,例如变换路径的指令为cd
中括号[]并不存在于实际的指令中,在加入参数时,通常为“-”符号,有时候完整名称会输入“--”符号。例如:ls –help
parameter1 parameter2为依附在option之后的参数,或者是command的参数
command,-options,parameter1这几项之间以空格分隔,不论空几格shell都视为一格
指令太长的时候,可以使
文档评论(0)