方法二:
#!/bin/bash
sum=0
for i in {1..32767};do
num=`echo $i |md5sum | cut -c1-10`
case $num in
efbaf275cd|4be9c40b8b|44b2395c46|f8c8873ce0|b902c16c8b|ad865d2f63)
echo $i
let sum++
;;
esac
if [ $sum -lt 6 ];then
continue
else
break
fi
done
$#和$*差别
[root@centos6mini 3.19]# ./linshi 1 2 2 3 4 1 2 2 3 4 2 2 3 4 2 3 4 3 4 4 [root@centos6mini 3.19]# cat linshi #!/bin/bash while [ $# -gt 0 ];do echo $* shift done [root@centos6mini 3.19]# ./linshi 1 2 2 3 4 5 4 3 2 1 [root@centos6mini 3.19]# cat linshi #!/bin/bash while [ $# -gt 0 ];do echo $# shift done
使用一条命令,依次创建指定的用户。如执行createuser.sh tom bob alice harry
方法1:
[root@centos6mini 3.19]# ./linshi createuser.sh tom bob alice harry
createuser.sh 用户创建成功
tom 用户创建成功
bob 用户创建成功
alice 用户创建成功
harry 用户创建成功
[root@centos6mini 3.19]# cat linshi
#!/bin/bash
#!/bin/bash
while [ $# -gt 0 ]
do
id $1 &>/dev/null
if [ $? -eq 0 ];then
echo $1 is already exsit.
shift
continue
fi
useradd $1
echo "$1 用户创建成功"
shift
done
删除用户
[root@centos6mini 3.19]# ./linshi createuser.sh tom bob alice harry
createuser.sh 用户删除成功
tom 用户删除成功
bob 用户删除成功
alice 用户删除成功
harry 用户删除成功
[root@centos6mini 3.19]# cat linshi
#!/bin/bash
while [ $# -gt 0 ];do
userdel -r $1
echo "$1 用户删除成功"
shift
done
方法2:
#!/bin/bash
while [ $# -gt 0 ];do
id $1 &> /dev/null && { echo $1 is alread exist && shift && continue; }
useradd $1 && echo $1 is created
shift
done
每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并退出脚本
#!/bin/bash
while true;do
if $(ps -au |grep "^hacker.*" &> /dev/null);then #监测前台终端上有没有用户登陆信息
echo $(ps -au |grep "^hacker.*" |tr -s " " |cut -d" " -f1,7,9) >> /var/log/login.log
#将用户登陆信息保存到日志文件中/var/log/login.log
break #推出监测
else
sleep 3s #三秒已监测,防止程序太多占用cpu
fi
done
随机生成10以内的数字,实现猜字游戏,提示比较大或小,相等则退出
[root@centos6mini 3.19]# ./linshi
请输入数值 : 1
错了 ,小了
请输入数值 : 9
错误,大了
请输入数值 : 5
猜对了
[root@centos6mini 3.19]# cat linshi
#!/bin/bash
qe=$( echo $[$RANDOM%10] )
while true ;do
read -p "请输入数值 : " qw
if [ $qw -gt $qe ] ;then
echo "错误,大了"
elif [ $qw -lt $qe ] ;then
echo "错了 ,小了"
elif [ $qe -eq $qw ];then
echo "猜对了"
break
fi
done










