shell脚本练习

1、shell 脚本写出检测 /tmp/size.log 文件如果存在显示它的内容,不存在则创建一个文件将创建时间写入。

 if [ -f /tmp/size.log ];then
   cat /tmp/size.log
 else
   stat exist.sh | awk -F: "NR==5" > /tmp/size.log
 fi
 ​

2、写一个 shel1 脚本,实现批量添加 20个用户,用户名为user01-20,密码为user 后面跟5个随机字符。

for i in {01..20}
do
  if ! id user${i} &> /dev/null ;then
    useradd user${i}
    echo "user$(echo $RANDOM | md5sum |cut -c 1-5)" |passwd --stdin $name
  else
    echo "user${i} is exist"
  fi
done

3、编写个shel 脚本将/usr/local 日录下大于10M的文件转移到/tmp目录下

 
find /usr/local/ -size +10M -exec mv {} /tmp/ \;

4、需求:判断192.168.1.0/24网络中,当前在线的ip有哪些,并编写脚本打印出来。

for I in `seq 1 254`
do
  ping -c 2 -w 2 "192.168.1.$I" &> /dev/null
  if [ $? -eq 0 ];
  then
        echo -e "\033[32;40m192.168.1.$I is up\033[0m"
  fi
done
 ​

5、设计一个 Shell 程序,在/userdata 目录下建立50个目录,即 user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。

 for i in {1..50}
 do
 if [ ! -d /userdata/user$i  ];then
  mkdir -p /userdata/user$i &> /dev/null
  chmod 754 /userdata/user$i &> /dev/null
 else
  exit 0
 fi
 done
 ​

你可能感兴趣的:(linux,服务器,运维)