- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 当函数被调用时,脚本程序(或称主程序)的位置参数$*、$@、$#、$1、$2等参数会被替换为函数的参数; 当函数执行完毕后,这些参数的先前值被恢复 可以用return语句让函数返回数字值 可以用local关键字在函数中声明局部变量 当局部变量与全局变量的名字相同时,前者覆盖后者 例2 2.7 函数 * 例3 函数参数传递、函数返回值示例 2.7 函数 函数return 0则执行 函数return 1则执行 * E N D * 例3 实现四则运算,能够完成1+1/2+…+1/n 2.3.6 case语句 等价于 * 2.4.1 break和continue语句 此两条命令功能类似于C语言中的同名语句 break: 跳出for、while、until循环 continue: 结束当次循环,判断循环条件,决定是否进入下一轮循环 例:输出正整数的累加值,即1+2+…+N,当累加值=5050时,输出N值,且结束运行 2.4 其它几个常用语句 * 2.4.1 break和continue语句(续) 输出1~100之间的奇数 2.4 其它几个常用语句 * 2.4.2 exit语句 exit命令使得脚本程序结束运行,退出码为n. 若脚本在退出时未指定退出状态,则最后一条被执行的命令的状态是返回值 在脚本程序中提供退出码是良好的编程习惯 例如 exit 0 表示成功退出, exit 1~125是脚本程序使用的错误代码 exit 126 文件不可执行 exit 127 命令未找到 2.4 其它几个常用语句 * 2.4.2 exit语句(续) 例2.27:.profile不存在 例:shell71p1.sh存在,而shell71p3.sh不存在 2.4 其它几个常用语句 * 2.4.3 printf语句 使用格式:printf “格式字符串” 参数1 参数2 … 格式字符串用法与C/C++语言类似, 格式字符串由各种可打印字符、转义序列、字符转换限定符组成(如下所示),例如 2.4 其它几个常用语句 * 2.4.3 printf语句(续) Shell默认不支持浮点数,所有的算术运算都是按照整数进行计算。 2.4 其它几个常用语句 * Linux系统中bash变量的值是以字符串格式存储的 如果需要进行算术和逻辑运算,必须先将字符串转换为整数 得到运算结果后再转换回字符串 bash提供了三种方法对数值数据进行算术运算: let命令 shell 扩展 $((expression)) expr 命令 2.5 数值处理 * let命令 let用来计算算术表达式的值 如果表达式中有空格或者特殊字符,应括在双引号中 使用Shell变量时,不需要在变量名前加$ 2.5 数值处理 * let命令(续) Shell中所有的算术运算都是按照整数来进行计算的。let用于处理整数,例如 2.5 数值处理 * 2.5.2 $((expression)) 用于求算术表达式的值,使用格式为:$((expression)) 其含义是计算表达式expression,并用计算结果代替$((expression)) $((expression))可作为参数传递给命令或者被放置在命令行上的任何数字位置上 bash中使用整数型数据进行计算;shell将字符串值转换到整数,再做算术计算(除非使用整型变量或真正的整数) expression中的变量名称前不需要加$符号,例如 2.5 数值处理 类似于命令替换所用的语法 $(…) 且两者执行相同的功能 * 2.5.2 $((expression)) (续) 不必将expression放在引号中,因此可以更容易使用*进行乘法运算 $(…)表示命令替换;$((…))表示算术替换 2.5 数值处理 * 2.5.2 $((expression)) (续) 例:输出0~9之间的整数 2.5 数值处理 可以将括号内的$去掉 * 2.5.3 expr 命令 使用格式:expr args(参数) 该命令将它的参数args当做一个表达式来求值,比较常见的用法: x=`expr $x + 1` 或 x=$(expr $x + 1) 该命令的功能十分强大,可以完成许多表达式的求值计算,见下表(其中expr1、expr2为表达式) 2.5 数值处理 表达式求值 说明 expr1 | expr2 或者关系,如果expr1非零,则表达式等于expr1,否则表达式等于expr2 expr1 expr2 并且关系,只要expr1和exp
文档评论(0)