1、编写脚本argsnum.sh,接受一个文件路径作为参数;如果参数个数小于1,则提示用户“至少应该给一个参数”,并立即退出;如果参数个数不小于1,则显示第一个参数所执行的文件中的空白行数
#!/bin/bash
[ $# -gt 0 ] && grep -Ec ^[[:space:]]*$ $1 || (echo “至少应该给一个参数”;exit)
2、编写脚本hostping.sh,接受一个主机的ipv4地址作为参数,测试是否可连通,如果能ping通,则提示用户该IP地址可以访问,如果不可ping通,则提示用户改ip不可访问;
#!/bin/bash
read -p "请输入IP地址:" IP
ping -c1 -W1 $IP &> /dev/null && echo "该$IP地址可以访问" || { echo "该$IP地址不可以访问"; exit; }
3、编写脚本 checkdisk.sh,检查磁盘分区空间和inode使用率,如果超过80%,就发广播警告空间将满
#!/bin/bash
DISK=`df | grep -E "^/dev/sd." | grep -Eo [0-9]+% | tr -d "%" | sort -nr | head -1`
INNODE=`df -i | grep -E "^/dev/sd." | grep -Eo [0-9]+% | tr -d "%" | sort -nr | head -1`
WARN=80
[ $DISK -gt $WARN -o $INNODE -gt $WARN ] && echo "DISKUSED:$DISK%, INODE_USED:$INNODE,即将满" || echo "diskspace is ok"
4、编写脚本 excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执行权限,否则提示用户非脚本文件
#!/bin/bash
[[ "$1" == *\.sh ]] && [ -f "$1" ] && chmod a+x $1 || echo 不是脚本文件