- 1、本文档共72页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * shift命令还有另外一个重要用途,Bsh定义了9个位置变量,从$1到$9,这并不意味着用户在命令行只能使用9个参数,借助shift命令可以访问多于9个的参数。 Shift命令一次移动参数的个数由其所带的参数指定。例如当shell程序处理完前九个命令行参数后,可以使用shift 9命令把$10移到$1。 7.5.8 函数的定义和使用 函数实际上是由若干shell命令组成,因此它与shell的命令文件形式上是相似的。不同的只是shell函数常驻于内存之中。它们不再是一个单独的进程,而是成了shell的一部分。 格式为, Function Name(){ command … command } 函数仅存在于定义它的shell环境中,不能把它们传递给子shell。函数是在当前shell中被执行的,在函数体中变量值和当前工作目录的改变,将影响当前shell的运行环境。函数一旦定义就被存入内存,shell执行函数时不需要在磁盘中进行查找,所以执行速度要比把函数中的命令放入到一个文件中的执行要快。使用函数时,命令行中列在函数名后的自变量传递给函数体中的位置参数。函数执行返回时也有一个出口状态。函数体内执行exit命令将结束函数的执行,同时也结束调用函数的shell程序的运行。而return命令用于结束函数的执行,如省略return时,则以最后一条命令的出口状态作为函数的出口状态。 例:显示欢迎界面 #!/bin/bash #filename:welcom first(){ echo “===========================“ echo “hello! welcome to the linux world” echo “===========================“ } second() { echo “***************************************” } first second second first 子函数 #!/bin/sh yes_or_no() { echo “Is your name $* ?” while true do echo -n “Enter yes or no: “ read x case “$x” in y | yes ) return 0;; n | no ) return 1;; * ) echo “Answer yes or no” esac done } 主函数 echo “Original parameters are $*“ if yes_or_no “$1” then echo “Hi $1, nice name” else echo “Never mind” fi exit 0 产生随机数 1 #!/bin/bash 2 3 # $RANDOM 在每次调用的时候,返回一个不同的随机整数. 4 # 指定的范围是: 0 - 32767 (有符号的16-bit 整数). 5 6 MAXCOUNT=10 7 count=1 10 echo $MAXCOUNT random numbers: 11 echo ----------------- 12 while [ $count -le $MAXCOUNT ] # 产生10 ($MAXCOUNT) 个随机整数. 13 do 14 number=$RANDOM 15 echo $number 16 let count += 1 # 数量加1. 17 done 18 echo ----------------- 20 # 如果你需要在一个特定范围内产生一个随机int,那么使用modulo(模)操作. 21 # 这将返回一个除法操作的余数. 22 23 RANGE=500 24 25 echo 26 27 number=$RANDOM 28 let number %= $RANGE 29 # ^^ 30 echo Random number less than $RANGE --- $number 1 #!/bin/bash 2 # 处理一个变量,C风格,使用((...))结构. 7 (( a = 23 )) # 给一个变量赋值,从=两边的空格就能看出这是c风格的处理. 8 echo a (initial value) = $a 10 (( a++ )) # 变量a后加1,C风格. 11 echo a (after a++) = $a 13 ((
您可能关注的文档
- 机械制图符号及表示含义.doc
- 机械制图-齿轮弹簧和滚动轴承.ppt
- 机械制图09.ppt
- 机械制造企业能源管理体系要求应用示例.docx
- lenovo e10拆解图.docx
- 机械制造--刀具材料.ppt
- 机械制造基础-2-6.ppt
- Learning about language 第三单元.ppt
- LED基础教程.ppt
- Lesson24 An E-mail to Grandpa.pptx
- 江苏省灌云高级中学2023-2024学年高三上学期第一次月考地理试题含答案.docx
- 备战2024年高考物理一轮重难点复习 第十三章 近代物理.docx
- 江苏省高邮市一中2021-2022学年高三上学期第一次月考语文试题(原卷版).docx
- 江苏省华罗庚中学2023-2024学年高三上学期12月阶段检测数学试卷含答案.docx
- 江苏省海门中学2023-2024学年高三上学期第一次调研考试地理试题及答案.docx
- 备战2024年高考物理一轮重难点复习 第九章 恒定电流.docx
- 江苏省高邮市2023-2024学年高三下学期3月学情调研数学试题含答案.docx
- 备战2024年高考物理一轮重难点复习 实验十一:探究影响感应电流方向的因素.docx
- 备战2024年高考物理一轮重难点复习 实验三:验证平行四边形定则.docx
- 备战2024年高考物理一轮重难点复习 第十四章 光.docx
文档评论(0)