RHEL 6 Linux中的shell变量总结
脚本的规范书写: #!/bin/bash #Date : 2014-5-28 #Author : Create by meng //脚本的创始人 #Mail :~~ //邮件地址 #Func (do):this is useradd user script. //脚本的作用 #V1.1 //脚本的版本 echo "hello,world!" //后面的才是脚本的内容 文章版权:http://www.cnblogs.com/linux-super-meng/ 字符串比较 格式 [ 字符串1 = 字符串2 ] [ 字符串1 != 字符串2 ] [ -z 字符串 ] 常用的测试操作符 =:字符串内容相同 !=:字符串内容不相同,!号表示相反的意思 -z:字符内容为空 #read -p "input your name: " name root #echo $name #[ $name != "root"] && echo "name is erro" ##read -p "input your name: " name zhangsan #[ $name != "root"] && echo "name is erro" #echo $name 文章版权:http://www.cnblogs.com/linux-super-meng/ 逻辑测试 格式:[表达式1] 操作符 [表达式2] 常用的测试操作符 -a 或&&:逻辑与,“而且”的意思 #前后两个表达式都成立是整个测试结果才为真,否则为假 (前面真则执行后面) -o或||:逻辑或,或者的意思 #操作符两边至少一个为真时,结果为真,否则结果为假 (前面假则执行后面) !:逻辑否 #当指定条件不成立时,返回结果为真 if条件语句 --单分支 当“条件成立“时执行相应的操作 if 条件测试命令 if 磁盘已用空间>80% then 命令序列 ==》 then 报警 fi 应用案例: 如果/boot分区的空间使用超过80%,输出报警信息 #!/bin/bash RATE=`df |awk'NR==4{print int($5)}'` if [$RATE -gt 80] then echo "warning,DISK is full!" if if条件语句--双分支 当“条件成立”、“条件不成立”时执行不同的操作 if 条件测试命令 if 3306端口是否在监听状态 then 命令序列1 ==》 then mysqld 服务已运行 else 命令序列2 else 启动mysqld服务 fi 引用案例: 判断vsftp是否在运行。若已运行则输出提示信息,否则重新启动vsftp服务 #!/bin/bash service vsftp status &>/dev/null if [ $? -eq 0 ] then echo "vsftp service is running" else /etc/init.d/vsftp restart fi 如果/boot分区的空间使用超过80%,输出警报信息。我们来写个脚本 #vi a.sh #!/bin/bash #a.sh NUM=`df | awk 'NR==5{print int($5)}'` if [ $NUM -gt 80 ] then echo "Warning,DISK is full!" if awk的额外扩展 [root@localhost ~]# cat /etc/passwd | grep bash | awk -F: '{print ($1)}' (编辑:常州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |