- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
棠棣科技中级培训教程--Unix_Shell编程培训教程
棠棣科技中级培训课程--
Unix Shell编程培训教程
V 1.0?
目 录
第一章 SHELL介绍 3
1.1 UNIX内核和Shell的交互方法 3
1.2 Shell的功能和特点 5
第二章 SHELL变量 7
2.1 Bsh的启动 7
2.2 Bsh里特殊字符及其含义 8
2.3 Bsh的变量 10
2.4 位置变量或Shell参数 13
第三章 基本语句 15
3.1 什么是Shell程序 15
3.2 简单的Shell程序 15
3.3 在Shell中使用数据变量 16
3.4 在Shell程序中加上注释 17
3.5 对Shell变量进行算术运算 17
3.6 向Shell程序传递参数 18
第四章 条件判断语句 20
4.1 if - then语句 20
4.2 if - then - else语句 22
4.3 test命令进行条件测试 23
4.3.1 条件语句test语句 23
4.4 嵌套if语句和elif结构 28
4.5 elif语句 29
4.6 case语句 30
4.7 read语句 31
第五章 循环语句 33
5.1 While循环 33
5.2 Until语句 36
5.3 for 循环 36
5.4 中断循环指令 40
第六章 与或结构 41
第七章 函数 43
第八章 使用trap命令进行例外处理 44
第九章 规范Shell 46
第十章 调试Shell程序 51
10.1 调试shell程序 51
10.2 命令分组 52
10.3 使用Shell分层管理器shl 53
SHELL介绍
*Shell是什么?
任何发明都具有供用户使用的界面。UNIX供用户使用的界面就是Shell(DOS的command熟悉吧,但UNIX的要强大的多)。 Shell为用户提供了输入命令和参数并可得到命令执行结果的环境。
为了不同的需要,UNIX提供了不同的Shell。现在的UNIX大部分都支持BourneShell,以下教程就以BourneShell(Bsh)为例,一步步的领略UNIX
Shell的强大功能,占先其强大魅力,达到更方便灵活的管理、应用UNIX的目的。
UNIX内核和Shell的交互方法
启动UNIX时,程序UNIX(内核)将被调入计算机内存,并一直保留在内存中直到机器关闭。在引导过程中,程序 init将进入后台运行一直到机器关闭。该程序查询文件/etc/inittab,该文件列出了连接终端的各个端口及其特征。当发现一个活动的终端时,init程序调用getty程序在终端上显示login等登陆信息。(username和passwd),在输入密码后, getty调用login进程,该进程根据文件/etc/passwd的内容来验证用户的身份。若用户通过身份验证,login进程 把用户的home目录设置成当前目录并把控制交给一系列setup程序。setup程序可以是指定的应用程序,通常setup程序 为一个Shell程序,如:/bin/sh 即Bourne Shell(command出来了,呵呵)。
得到控制后,Shell程序读取并执行文件/etc/.profile以及.profile。这两个文件分别建立了系统范围内的和 该用户自己的工作环境。最后Shell显示命令提示符,如$。(这是以bsh为例,若是csh,为.cshrc,ksh为.kshrc,bash为.bashrc等等)
注不妨把/etc/.profile和.profile看成DOS的autoexec.bat 或
config.sys文件)
当shell退出时,内核把控制交给init程序,该程序重新启动自动登陆过程。有两种方法使shell退出,一是用户执行exit命令,二是 内核(例如root用kill命令)发出一个kill命令结束shell进程。shell退出后,内核回收用户及程序使用的资源。
用户登陆后,用户命令同计算机交互的关系为:命令进程---Shell程序---UNIX内核---计算机硬件。当用户输入一个命令,如$ls, Shell将定位其可执行文件/bin/ls并把其传递给内核执行。内核产生一个新的子进程调用并执行/bin/ls。当程序执行完毕后,内核取消该子进程并把控制交给其父进程,即Shell程序。例如执行:
$ps
该命令将会列出用户正在执行的进程,即Shell程序(下来详细说说,别急现在)和ps程序。若执行:
$sleep 10
$ps
其中第一条命令将产生一个在后台执行的sleep子进程。ps命令执行时会显示出该子进程。
每当用户执行一条命令时,就会产生一个子进程。该子进程的执行与其父进程或Shell完全无关,这样可以
您可能关注的文档
最近下载
- 2025年江苏工会工作者招聘考试(工会基础知识)历年参考题库含答案详解.docx VIP
- 最新工会考试知识题库含答案.docx VIP
- 2025工会招聘社会化工会工作者综合知识专业能力测试题库.docx VIP
- 在线网课学习课堂《学术交流英语(哈工 )》单元测试考核答案.docx VIP
- 2025年陕西工会工作者招聘考试(工会基础知识)历年参考题库含答案详解.docx VIP
- 冬季管道排水工程施工方案(DOC).docx VIP
- 2025年社会化工会工作者综合素质与工会知识题库.docx VIP
- 清洁能源-氢能-课件.ppt VIP
- 2025年工会工作者法律法规与基础知识题库.docx VIP
- 爱默生质量流量计简明使用手册(一).pdf VIP
原创力文档


文档评论(0)