Linux编程之shell入门基础.docVIP

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

什么是shell程式呢? 简单的说shell程式就是个包含若干行的shell或linux命令的文件.象编写高级语言的程式相同,编写一个shell程式需要一个文本编辑器.如VI等. 在文本编辑环境下,依据shell的语法规则,输入一些shell/linux命令行,形成一个完整的程式文件. 执行shell程式文件有三种方法 (1)#chmod +x file (2)#sh file (3)# . file 在编写shell时,第一行一定要指明系统需要那种shell解释你的shell程式,如: #! /bin/bash #! /bin/csh,/bin/tcsh #! /bin/pdksh 2.shell中的变量 (1)常用系统变量 $ # :保存程式命令行参数的数目 $ ? :保存前一个命令的返回码 $ 0 :保存程式名 $ * :以($1 $2...)的形式保存所有输入的命令行参数 $ @ :以($1$2...)的形式保存所有输入的命令行参数 (2)定义变量 shell语言是非类型的解释型语言,不象用C++/JAVA语言编程时需要事先声明变量.给一个变量赋值,实际上就是定义了变量.在linux支持的所有shell中,都能用赋值符号(=)为变量赋值.如: abc=9 (bash/pdksh不能在等号两侧留下空格 ) set abc = 9 (tcsh/csh) 由于shell程式的变量是无类型的,所以用户能使用同一个变量时而存放字符时而存放整数. 如: name=abc (bash/pdksh) set name = abc (tcsh) 在变量赋值之后,只需在变量前面加一个$去引用. 如:echo $abc (3)位置变量 当运行一个支持多个命令行参数的shell程式时,这些变量的值将分别存放在位置变量里. 其中第一个参数存放在位置变量1,第二个参数存放在位置变量2,依次类推...,shell保留 这些变量,不允许用户以令外的方式定义他们.同别的变量,用$符号引用他们. 3.shell中引号的使用方法 shell使用引号(单引号/双引号)和反斜线(\)用于向shell解释器屏蔽一些特别字符.反引号()对shell则有特别意义. 如: abc=how are you (bash/pdksh) set abc = how are you (tcsh) 这个命令行把三个单词组成的字符串how are you作为一个整体赋值给变量abc. abc1=$LOGNAME,how are you! (bash/pdksh) set abc1=$LOGNAME,how are you! (tcsh) abc2=$LOGNAME,how are you! (bash/pdksh) set abc2=$LOGNAME,how are you! (tcsh) LOGNAME变量是保存当前用户名的shell变量,假设他的当前值是:wang.执行完两条命令后, abc1的内容是:$LOGNAME, how are you!.而abc2的内容是;wang, how are you!. 象单引号相同,反斜线也能屏蔽所有特别字符.不过他一次只能屏蔽一个字符.而不能屏蔽一组字符.反引号的功能不同于以上的三种符号.他不具有屏蔽特别字符的功能.不过能通过他将一个命令的运行结果传递给另外一个命令.如: contents=`ls` (bash/pdksh) set contents = `ls` (tcsh) 4.shell程式中的test命令 在bash/pdksh中,命令test用于计算一个条件表达式的值.他们经常在条件语句和循环语句中被用来判断某些条件是否满足. test命令的语法格式: test expression 或 [expression] 在test命令中,能使用非常多shell的内部操作符.这些操作符介绍如下: (1)字符串操作符 用于计算字符串表达式 test命令 | 含义 ----------------------------------------- Str1 = str2 | 当str1和str2相同时,返回True Str1! = str2| 当str1和str2不同时,返回True Str | 当str不是空字符时,返回True -n str | 当str的长度大于0时,返回True -z str | 当str的长度是0时,返回True ----------------------------------------- (2)整数操作符具有和字符操作符类似的功能.只是他们的操作是针对整数 test表达式 | 含义 --------------------------------------------- Int1 -eq i

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档