shell的应用

1.文件测试。
[root@centos01 ~]# [ -d /media/ ]
[root@centos01 ~]# echo $?
0
[root@centos01 ~]# [ -d /media/cdrom/Server ]
[root@centos01 ~]# echo $?
1
[root@centos01 ~]# [ -d /media/cdrom/Server ] && echo “yes”
[root@centos01 ~]# mkdir -p /media/cdrom/
[root@centos01 ~]# [ -d /media/ ] && echo “yes”
yes
2.整数值比较
[root@centos01 ~]# Unum=who | wc -l
[root@centos01 ~]# [ $Unum -gt 1 ] && echo “Too many.”
[root@centos01 ~]# [ KaTeX parse error: Expected 'EOF', got '&' at position 14: Unum -gt 0 ] &̲& echo "Too man…(free -m | grep “Mem: " | awk ‘{print $6}’)
[root@centos01 ~]# [ $FreeCC -lt 1024 ] && echo ${FreeCC}MB
177MB
3.字符串比较
[root@centos01 ~]# echo $LANG
zh_CN.UTF-8
[root@centos01 ~]# [ $LANG != “en.US” ] && echo “Not en.US”
Not en.US
[root@centos01 ~]# read -p “是否覆盖现有文件(yes/no)?” ACK
是否覆盖现有文件(yes/no)?yes
[root@centos01 ~]# [ $ACK = “yes” ] && echo “覆盖”
覆盖
[root@centos01 ~]# read -p “是否覆盖现有文件(yes/no)?” ACK
是否覆盖现有文件(yes/no)?no
[root@centos01 ~]# [ KaTeX parse error: Expected 'EOF', got '&' at position 14: ACK = "no" ] &̲& echo "不覆盖" 不覆…(uname -r | awk -F. '{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 1}̲') [root@centos…(uname -r | awk -F. ‘{print $2}’)
[root@centos01 ~]# [ $Mnum -ge 3 ] && [ $Snum -gt 4 ] && echo “符合要求”
符合要求
5.单分支if语句
[root@centos01 ~]# vim chkmountdir.sh
[root@centos01 ~]# cat chkmountdir.sh
#!/bin/bash
MOUNT_DIR=”/media/cdrom/"
if [ ! -d $MOUNT_DIR ]
then
mkdir -p KaTeX parse error: Expected 'EOF', got '#' at position 31: …oot@centos01 ~]#̲ chmod +x chkmo…USER" != “root” ]
then
echo “错误:非root用户,权限不足!”
exit 1
fi
fdisk -l /dev/sda
[root@centos01 ~]# chmod +x /opt/chkifroot.sh
[root@centos01 ~]# /opt/chkifroot.sh
[root@centos01 ~]$ /opt/chkifroot.sh
6.双分支if语句
[root@centos01 ~]# vim pinghost.sh
[root@centos01 ~]# cat pinghost.sh
#!/bin/bash
ping -c 3 -i 0.2 -W 3 $1 &> /dev/null
if [ $? -eq 0 ]
then
echo “Host $1 is up.”
else

echo "Host $1 is down."

fi
[root@centos01 ~]# chmod +x pinghost.sh
[root@centos01 ~]# ./pinghost.sh 192.168.100.10
Host 192.168.100.10 is up.
[root@centos01 ~]# ./pinghost.sh 192.168.100.20
Host 192.168.100.20 is down.

7.多分支if语句
[root@centos01 ~]# vim gradediv.sh
[root@centos01 ~]# cat gradediv.sh
#!/bin/bash
read -p “请输入您的分数(0-100:” GRADE
if [ $GRADE -ge 85 ] && [ G R A D E − l e 100 ] t h e n e c h o " GRADE -le 100 ] then echo " GRADEle100]thenecho"GRADE 分,优秀!"
elif [ KaTeX parse error: Expected 'EOF', got '&' at position 16: GRADE -ge 70 ] &̲& [ &GRADE -le …GRADE 分,合格!"
else
echo “$GRADE 分,差劲!”
fi
[root@centos01 ~]# sh gradediv.sh
请输入您的分数(0-100:100
100 分,优秀!
[root@centos01 ~]# sh gradediv.sh
请输入您的分数(0-100:60
gradediv.sh:行6: GRADE: 未找到命令
60 分,差劲!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值