- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2linux命令及shell概要
1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 #Shell比较大小compare.sh #!/bin/sh #提示输入一个数字 echo -n “please input two number:” read a read b if test $a = $b then echo “NO.1=NO.2” elif test $a -gt $b then echo “NO.1NO.2” else echo “NO.1NO.2” 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 根据上文实现内容,一起学习下shell中的逻辑运算符号 符号 代表意义 符号 代表意义 符号 代表意义 = 等于 != 不等于 小于 大于 -eq 等于 -ne 不等于 -lt 小于 -gt 大于 -le 小于或等于 -ge 大于或等于 -a 并且(and) -o 单方成立(or) -z 空字符串 -n 非空字符串 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 课堂练习 9、设计一个shell程序,实现检查指定进程是否已经存在(如send_timelog进程),如已经存在显示“the send_timelog is running”否则重新启动进程,并将进程状态重定向的log文件中。 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 #Shell记录时间日志sendtime.sh #!/bin/sh #死循环 while true do echo –n “time is : ” time.log date +“%m%d %H:%M:%S ” time.log sleep 2 done 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 #Shell检查进程是否运行,如没有运行,使用脚本运行process.sh #!/bin/sh a=$(ps –e | grep send_timelog.sh) #echo $a b=$( echo $a | awk ‘{print $4}’ ) if [ $b = “send_timelog.sh” ];then echo “the process is running !” else echo “the process error !” cd /home/pi/shell_lesson/ ./send_timelog.sh fi 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 根据上文实现内容,一起学习下shell中的、、 |、 grep、awk ?:如果文件不存在,将创建新的文件,并将数据送至此文件;如果文件存在,则将数据添加在文件后面??:如果文件不存在,同上,如果文件存在,先将文件清空,然后将数据填入此文件 ”|”:管道命令操作符,它仅能处理经由前面一个指令传出的正确输出信息,也就是 standard output 的信息,管道命令右边命令,必须能够接收标准输入流命令才行。 grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 awk:好用的数据处理工具,awk 也是一个非常棒的数据处理工具!awk 则比较倾向于一行当中分成数个栏位(或者称为一个域,也就是一列)来处理。 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 课堂练习 10、设计一个shell程序,实现ping一个网段的所有ip,并检查网络连接状态是否正常。显示每个该网段的每个网络地址,并在其后显示ping后的状态(网络正常用yes表示,否则用no表示。 1.3.3 编写shell脚本 湖南信息职业技术学院信息工程系 #Shell ping通网络中的IP ping.sh #!/bin/sh ip172.16.42. for i in `seq 20 25` # ``次符号 do ping –c 2 $ip$i # -c 2 指定次数 也可以指定
文档评论(0)