- 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编程
Linux下的shell编程
注释:
1 echo The # here does not begin a comment。
2 echo The # here does not begin a comment。
3 echo The \# here does not begin a comment。
4 echo The # here begins a comment。
6 echo ${PATH#*:} # 前面的#是参数代换,不是注释。
7 echo $(( 2#101011 )) # 基本转换,不是注释。
点命令[圆点]。 等同于source 。这是一个bash的内建命令。
[双引号]。 STRING的引用会使STRING里的特殊字符能够被解释。#和php一样
[单引号]。 STRING能引用STRING里的所有字符(包括特殊字符也会被原样引用)。
[逗号]。 逗号操作符用于连接一连串的数学表达式。这一串的数学表达式每一个都被求值,但只有最后一个被返回。
1 let t2 = ((a = 9, 15 / 3)) # Set a = 9 and t2 = 15 / 3
命令替换.`command` 结构使字符(`)[译者注:这个字符不是单引号,而是在标准美国键盘上的ESC键下面,在字符1左边,在TAB键上面的那个键,要特别留心]引住的命令(command)执行结果能赋值给一个变量。#执行一条命令并将值赋给变量
空命令[冒号]. 这个命令意思是空操作(即什么操作也不做). 它一般被认为是和shell的内建命令true是一样的。冒号: 命令是Bash自身内建的, and its它的退出状态码是真(即0)。[译者注:shell中真用数字0表示].
: data.xxx # 文件data.xxx现在长度为0了
$ 变量替换 (引用一个变量的内容).
1 var1=5
2 var2=23skidoo
3
4 echo $var1 # 5
5 echo $var2 # 23skidoo
${parameter} 参数替换 和$parameter是相同的,都是表示变量parameter的值。在一些环境中,使用${parameter}比较不会引起误解.
$*, 显示所有参数的值。$*必须被引号引起来。
$@, 和$*相同,但每个参数都是一个引起的字符串。那是说,参数都是没有被解析或扩展,是完整无缺地被传递的。这是说在参数列表中的每一个参数都被看作是一个单独的单元。$@应该被引号引起来。
$#: 参数的个数
$? 变量保存了最后一个命令执行后的退出状态。
$$ 脚本本身的进程PID。
( ) 一组由圆括号括起来的命令是新开一个子shell来执行的.因为是在子shell里执行,在圆括号里的变量不能被脚本的其他部分访问。
a=123
( a=hello; echo $a )
数组初始化. Array=(element1 element2 element3)
{xxx,yyy,zzz,...}在扩展中的所有模式都不能包含空白字符,除非空白字符是被转义或引用的。
cat {file1,file2,file3} combined_file
# 连接file1,file2,和file3的内容并写到文件combined_file里去.
cp file22.{txt,backup}
# 拷贝file22.txt内容为file22.backup
{}代码块[花括号]. 这个结构也是一组命令代码块,事实上,它是匿名的函数。在代码块里的变量仍然能被脚本后面的代码访问
a=123
{ a=321; }
echo a = $a # a = 321 (结果是在代码块里的值)
scriptname filename重定向scriptname的输出到文件filename中去. 如果文件filename存在则将会被覆盖.
command filename 会重定向命令command标准输出(stdout)和标准错误(stderr)到文件filename中.
command 2 把命令command的标准输出(stdout)重定向到标准错误(stderr).
scriptname filename appends把脚本scriptname的输出追加到文件filename.如果filename不存在,则它会被创建.
常用FD有3个,为0(stdin,标准输入)、1(stdout,标准输出)、2(stderr,标准错误输出),输出的默认值为1:1,输入的默认值为0:0
cmd file 把 stdout 重定向到 file 文件中
您可能关注的文档
最近下载
- 2025年福建高考化学卷及答案(新课标卷).docx VIP
- 小学生控笔训练.docx VIP
- 中级日语(N3)中常用的副词总结讲义--日语等级考试备战.docx VIP
- 2025年高中地理世界地理高考试题汇编.doc VIP
- 人工智能大数据支持背景下循证教学的实施研究课题申报评审书.pptx VIP
- 再审申请听证申请书范文.docx VIP
- 《综合英语I》课程教学创新成果报告.pdf VIP
- 渗透作用课件.ppt VIP
- 专题21 散文阅读(同步练习)(解析版)【中职专用】2024届高三语文(对口升学)一轮复习备考指南(湖南适用).docx VIP
- 2025年铭记历史勿忘国耻纪念九一八事变学习ppt课件.pptx
文档评论(0)