- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]Linux下的shell编程
telnet 45
1.什么是 Shell
Shell是一种具备特殊功能的程序,它是介于使用者和 UNIX/Linux 操作系统之核心
程序(kernel)间的一个接口。对计算机下命令得透过命令(command)或是程序(program);程序有编译器(compiler)将程序转为二进制代码,可是命令呢?其实shell 也是一些程序,它由输入设备读取命令,再将其转为计算机可以了解的机械码,然后执行它。
各种操作系统都有它自己的shell, UNIX 下除了 Bourne shell(/bin/sh) 外还有 C shell(/bin/csh)、Korn shell(/bin/ksh)、Bourne again shell(/bin/bash)、Tenex C shell(tcsh) … 等其它的 shell。UNIX/Linux 将 shell 独立于核心程序之外,使得它就如同一般的应用程序,可以在不影响操作系统本身的情况下进行修改、更新版本或是添加新的功能。
Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高
级语言中才具有的控制结构,包括循环和分支。
在Linux下比较流行的shell有好几个,每个shell都各有千秋。一般的Linux系统都将bash作为默认的shell。
2. Linux下的shell编程(一)
3. shell程序设计(基础部分)
作为命令语言交互式地解释和执行用户输入的命令只是shell功能的一个方面,shell还可以用来进行程序设计,它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中的批处理文件,称为shell script, 又叫shell程序或shell命令文件。
1.shell基本语法
shell的基本语法主要就是如何输入命令运行程序以及如何在程序之间通过shell的一些参数提供便利手段来进行通讯。
(1)输入输出重定向
在Linux中,每一个进程都有三个特殊的文件描述指针:标准输入(standard input,文件描述指针为0)、标准输出(standard output,文件描述指针为1)、标准错误输出(standard error,文件描述指针为2)。这三个特殊的文件描述指针使进程在一般情况下接收标准输入终端的输入,同时由标准终端来显示输出,Linux同时也向使用者提供可以使用普通的文件或管道来取代这些标准输入输出设备。在
shell中,使用者可以利用“”和“”来进行输入输出重定向。如:
commandfile:将命令的输出结果重定向到一个文件。
commandfile:将命令的标准错误输出一起重定向到一个文件。
commandfile:将标准输出的结果追加到文件中。
commandfile:将标准输出和标准错误输出的结构都追加到文件中。
command
(2)管道pipe
pipe同样可以在标准输入输出和标准错误输出间做代替工作,这样一来,可以将某一个程序的输出送到另一个程序的输入,其语法如下:
command1| command2[| command3...]
也可以连同标准错误输出一起送入管道:
command1| command2[| command3...]
(3)前台和后台
在shell下面,一个新产生的进程可以通过用命令后面的符号“;”和“”来
分别以前台和后台的方式来执行,语法如下:
command ;
产生一个前台的进程,下一个命令须等该命令运行结束后才能输入。
command
产生一个后台的进程,此进程在后台运行的同时,可以输入其他的命令。
2。shell程序的变量和参数
像高级程序设计语言一样,shell也提供说明和使用变量的功能。对shell来讲,所有变量的取值都是一个字符串,shell程序采用$var的形式来引用名为var的变量的值。
Shell有以下几种基本类型的变量:
(1)shell定义的环境变量
shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,这些变
量用户还可以重新定义,常用的shell环境变量有:
HOME:用于保存注册目录的完全路径名。
PATH:用于保存用冒号分隔的目录路径名,shell将按PATH变量中给出的顺序搜索这些目录,找到的第一个与命令名称一致的可执行文件将被执行。
TERM:终端的类型。
UID:当前用户的标识符,取值是由数字构成的字符串。
您可能关注的文档
- [工学]fortran第7章2.ppt
- [工学]Flash自学课件 第6章.ppt
- [工学]GIS工程设计与实现第九讲.ppt
- [工学]GIS 地理信息系统-地理空间和空间数据基础.ppt
- [工学]GNSS-PA-Ch07-pp32.ppt
- [工学]GPS测量原理与应用第四章2009.ppt
- [工学]FPGA/CPLD结构与应用.ppt
- [工学]GSM数字蜂窝移动通信系统.pdf
- [工学]GPS精密定位定轨原理.ppt
- [工学]GPS原理及其应用_chapter1_1.ppt
- 语文课文教案设计模板.docx
- 2025年家庭医生签约服务能力考核试题及答案.docx
- 2025年棉纺面料可持续发展五年报告.docx
- 空心莲子草提取物在梅花鹿饲料添加剂中的研究与应用.docx
- 河南省信阳市淮滨县河南省淮滨县第二高级中学2025-2026学年高二上学期1月月考生物试题(含答案).pdf
- 2025年初级养老护理员试题及答案.docx
- 深入解析F检验与方差分析_统计原理的深度探索与实战应用技巧.docx
- 基于CT的影像组学联合CD8+T淋巴细胞浸润水平对结直肠癌异时性肝转移的预测价值.docx
- 河南省郑州市2025-2026年高三上一模物理试卷(含答案).pdf
- 2025年低空空域管理五年技术报告.docx
原创力文档


文档评论(0)