[工学]Linux下的shell编程.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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:当前用户的标识符,取值是由数字构成的字符串。

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档