shell脚本

[[email protected] ~]# [ -d /media/cdrom ]             #判断是否是目录

[[email protected] ~]# echo $?

  1. #返回数为非零,上条判断错误

 

[[email protected] ~]# [ -f /media/cdrom ]              #判断是否是文件

[[email protected] ~]# echo $?

  1. #返回非零,不是文件

 

[[email protected] ~]# [ -e /media/cdrom ]             #判断是否存在

[[email protected] ~]# echo $?

  1. #返回非零,不存在

 

test –d /media/                #判断,test也是判断

 

shell脚本

[[email protected] ~]# users=$(who |wc -l)                      #定义一个变量

[[email protected] ~]# [ $users -gt 5 ]                                #判断是否大于5

[[email protected] ~]# echo $?

  1. 输出,不大于5

 

 

[[email protected] ~]# [ $(who |wc -l) -gt 5 ]                   #将上述两条命令结合在一起

[[email protected] ~]# echo $?

1

 

[[email protected] ~]# [ $(who |wc -l) -gt 5 ] && echo "yes"                  #条件为真输出yes,假则不输出

 

[[email protected] ~]# [ $(who |wc -l) -lt 5 ] && echo "yes"          #条件为真,输出yes

Yes

 

[[email protected] ~]# free                                 #查看内存使用情况(-m以兆为单位显示)

 

[[email protected] ~]# free -m |grep Mem |awk -F' ' '{print $4}'           #第一行第四列

64

 

[[email protected] ~]# free_mem=$(free -m |grep Mem |awk -F' ' '{print $4}')           #将结果赋值变量

[[email protected] ~]# [ $free_mem -lt 100 ]                   #判断

[[email protected] ~]# echo $?

0

 

逻辑操作符:-a或&&(逻辑与)、-o或||(逻辑或)

 

磁盘使用情况:df –hT

一般要取某一个值,可以先把行取出,再把行中的某个列取出

[[email protected] ~]# df -hT |grep /$ |awk '{print $6}' |awk -F'%' '{print $1}'

46

 

rate=$(df -hT |grep /$ |awk '{print $6}' |awk -F% '{print $1}')

if [ $rate -gt 80 ]

then

        echo "disk is full!!!"

fi

shell脚本

Chmod +x test1.sh          #加执行权限

 

shell脚本

#双分支

 

 

 

 

 

 

 

 

 

 

[[email protected] ~]# netstat -tunlp |grep nginx &> /dev/null              #将命令执行的结果不显示在终端

shell脚本

#判断nginx是否启动,如果没有启动则启动脚本

 

[[email protected] ~]# ps ax |grep nginx |grep -v grep  过滤掉grep本身的进程

 

shell脚本

#判断成绩

 

shell脚本

#判断目录是否存在,不存在的话创建该目录,!代表如果不存在

 

[[email protected] ~]# ping -c 3 -i 0.2 -w 1 192.168.88.2                #-c(ping的次数,-i时间间隔,-w超时时间)

shell脚本

#判断主机是否存活(ping通)

shell脚本

 

shell脚本

#for循环将aaa.txt的值取出赋给nums,再用for循环依次打印。

 

shell脚本

#依次添加用户,并设置口令

 

shell脚本

#批量删除用户

[[email protected] ~]# tail /etc/passwd           #查看用户

 

shell脚本

#用循环测试主机存活性

 

shell脚本

#用while循环批量添加用户

 

shell脚本

#用for循环批量添加用户

 

shell脚本

#猜数字游戏,用RANDOM生成随机数

 

shell脚本

#nginx