欢迎来到天天文库
浏览记录
ID:52199179
大小:124.00 KB
页数:33页
时间:2020-03-24
《Shell 脚本常用命令 文档.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Shell脚本常用命令1 Shell中的特殊符号1.1 $ 美元符号。用来表示变量的值。如变量NAME的值为Mike,则使用$NAME就可以得到“Mike”这个值。1.2 # 井号。除了做为超级用户的提示符之外,还可以在脚本中做为注释的开头字母,每一行语句中,从#号开始的部分就不执行了。1.3 “” 双引号。shell不会将一对双引号之间的文本中的大多数特殊字符进行解释,如#不再是注释的开头,它只表示一个井号“#”。但$仍然保持特殊含义。(在双引号中的$加变量名,即:$PARAM_NAM
2、E,依然会转换成变量的值。)1.3.1 双引号对于某些特殊符号是不起作用的,例如:”,$,,`(反引号)1.3.2 双引号和单引号不能嵌套。即:echo‘””’ 输出””, echo“’’”输出’’1.4 ‘’ 单引号。shell不会将一对单引号之间的任何字符做特殊解释。(在双引号中的$加变量名,即:$PARAM_NAME,不会转换成变量的值。)1.4.1 echo“$HOME” (结果:/home/xiongguoan)1.5 `` 倒引号。命令替换。在倒引号内部的shell命令首先被执行,其结果
3、输出代替用倒引号括起来的文本,不过特殊字符会被shell解释。1.5.1 echo‘$HOME’ (结果:$HOME)1.6 斜杠。用来去掉在shell解释中字符的特殊含义。在文本中,跟在后面的一个字符不会被shell特殊解释,但其余的不受影响。1.7 []中括号,主要是用来测试条件的,通常放在if语句的后面。(不过还是不太明白),但是中括号本身不会在测试语句执行后消失。1.7.1 echo[$HOME] (结果:出现错误)1.7.2 echo[$HOME] (结果:[/home/xiongg
4、uoan])(注意:HOME后面有空格哦。)1.7.3 echo[$HOME–eq‘/xiong’] (结果:[/home/xiongguoan–eq/xiong]) 1.8 {}大括号,主要是和$符号配合,作为字符串连接来使用1.8.1 echo${HOME}ismydir (结果:/home/xiongguoanismydir) 2 预定义的变量2.1 特殊变量 $ shell变量名的开始,如$var
5、 管道,将标准输出转到下一个命令的标准输入$# 记录传递给Shel
6、l的自变量个数# 注释开始& 在后台执行一个进程? 匹配一个字符* 匹配0到多个字符(与DOS不同,可在文件名中间使用,并且含.)$- 使用set及执行时传递给shell的标志位$! 最后一个子进程的进程号 $? 取最近一次命令执行后的退出状态(返回码)$* 传递给shellscript的参数$@ 所有参数,个别的用双引号括起来$0 当前shell的名字$n (n:1-)位置参数$$ 进程标识号(ProcessIdentifierNumber,PID)> 输出重定向 <
7、 输入重定向 >> 输出重定向(追加方式) [] 列出字符变化范围,如[a-z] 2.2 代值变量 *任意字符串 ?一个任意字符 [abc]a,b,c三者中之一 [a-n]从a到n的任一字符 2.3 特殊字符的表达 b 退回 c 打印一行时没有换行符 这个我们经常会用到 f 换页 r 回车 t 制表 v 垂直制表 \ 反斜线本身 2.4 其他字符2.4.1 分号;表示一行结束2.4.2 圆括号()表示在新的子shell中执行括号内的命令(这样可以不改
8、变当前shell的状态。)但是圆括号在单/双引号内失去作用,只作为普通字符。2.4.3 花括号2.4.3.1 分割命令的用法与圆括号相似,但是:1.花括号内的命令在当前shell中执行;2.花括号必须作为命令的第一个字符出现。2.4.3.2 引用变量的用法在$后面,表示变量名的开始和结束 2.4.4 方括号相当与test命令,用来执行测试条件,通常用在需要判断条件的语句后面,例如:if,while等等。 3 设置变量3.1 格式:VARNAME=value(i.e.PARAM=’hello’)3.2
9、 注意:3.2.1 等号的前后不能有空格3.2
此文档下载收益归作者所有