Linux网络操作系统及应用教程 项目式 作者 杨云 王秀梅 孙凤杰 项目八 学习shell script.pptVIP

Linux网络操作系统及应用教程 项目式 作者 杨云 王秀梅 孙凤杰 项目八 学习shell script.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* * * * * * * * * * * * * * * 8.5 任务5 使用循环(loop) 8.5.2 子任务2 for…do…done(固定循环) 如果想要让用户输入某个目录名,然后找出某目录内的文件的权限,该如何做呢?程序如下: [root@www scripts]# vim sh18.sh #!/bin/bash # Program: # User input dir name, I find the permission of files. # History: # 2012/08/29 Bobby First release PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH ? 8.5 任务5 使用循环(loop) 8.5.2 子任务2 for…do…done(固定循环) # 先看看这个目录是否存在啊 read -p Please input a directory: dir if [ $dir == -o ! -d $dir ]; then echo The $dir is NOT exist in your system. exit 1 fi ? # 开始测试文件 filelist=$(ls $dir) # 列出所有在该目录下的文件名称 for filename in $filelist do perm= test -r $dir/$filename perm=$perm readable test -w $dir/$filename perm=$perm writable test -x $dir/$filename perm=$perm executable echo The file $dir/$filenames permission is $perm done 8.5 任务5 使用循环(loop) 8.5.3 子任务3 for…do…done 的数值处理 除了上述的方法之外,for循环还有另外一种写法。语法如下: for (( 初始值; 限制值; 执行步长 )) do 程序段 done 8.5 任务5 使用循环(loop) 8.5.3 子任务3 for…do…done 的数值处理 [root@www scripts]# vim sh19.sh #!/bin/bash # Program: # Try do calculate 1+2++${your_input} # History: # 2012/08/29 Bobby First release PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH ? read -p Please input a number, I will count for 1+2+...+your_input: nu ? s=0 for (( i=1; i=$nu; i=i+1 )) do s=$(($s+$i)) done echo The result of 1+2+3+...+$nu is == $s 8.6 任务6 对shell script进行追踪与调试 我们就直接以 bash 的相关参数来进行判断。 [root@www ~]# sh [-nvx] scripts.sh 选项与参数: -n :不要执行 script,仅查询语法的问题。 -v :在执行 script 前,先将 script 的内容输出到屏幕上。 -x :将使用到的 script 内容显示到屏幕上,这是很有用的参数! 8.6 任务6 对shell script进行追踪与调试 范例1:测试 sh16.sh 有无语法的问题。 [root@www ~]# sh -n sh16.sh # 若语法没有问题,则不会显示任何信息! 8.6 任务6 对shell script进行追踪与调试 范例2:将 sh15.sh 的运行过程全部列出来。 [root@www ~]# sh -x sh15.sh + PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin + export PATH + for animal in dog cat elephant + echo There are dogs There are dogs + for animal in

您可能关注的文档

文档评论(0)

118压缩包课件库 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档