第八章

                                                第八章

1、for根据姓名列表批量添加用户
[root@centos01 ~]#vim /root/ users.txt
chenye
dengchao
zhangie
2、编写脚本添加账户
[root@centos ~]# vim uaddfor.sh
#!/bin/bash
ULIST=$(cat /root/users.txt)
for UNAME in $ULLIST
do
useradd $UNAME
echo “123456” | passwd --stdin KaTeX parse error: Expected 'EOF', got '&' at position 7: UNAME &̲>/dev/null done…(cat /root/users.txt)
for UNAME in $ULIST
do
userdel -r KaTeX parse error: Expected 'EOF', got '&' at position 7: UNAME &̲>/dev/null done…(cat /root/ipadds.txt)
for IP in $HLIST
do
ping -c 3 -i 0.2 -w 3 $IP &> /dev/null
if [ $? -eq 0 ]
then
echo “Host $IP is up.”
else
echo “Host $IP is down.”
fi
done
[root@centos ~]# chmod +x chkhosts.sh
[root@centos ~]# ./chkhosts.sh
Host 172.16.16.1 is up.
Host 172.16.16.22 is up.
Host 172.16.16.200 is down.
5、while语句应用实例
[root@centos ~]# vim uaddwhile.sh
#!/bin/bash
PREFIX=“stu”
i=1
while [ $i -le 20 ]
do
useradd P R E F I X {PREFIX} PREFIXi
echo “123456” | passwd --stdin P R E F I X {PREFIX} PREFIXi &> /dev/null
let i++
done
[root@centos ~]# chmod +x uaddwhile.sh
[root@centos ~]# ./uaddwhile.sh
[root@centos ~]# grep “stu” /etc/passwd | tail -3
stu18❌1018:1018::/home/stu18:/bin/bash
stu19❌1019:1019::/home/stu19:/bin/bash
stu20❌1020:1020::/home/stu20:/bin/bash
6、删除uadd while.sh脚本所添加的用户
[root@centos ~]# vim udelwhile.sh
#!/bin/bsah
FREFIX=“stu”
i=1
while [ $i -le 20 ]
do
userdel -r P R E F I X {PREFIX} PREFIXi
let i++
done
[root@centos ~]# chmod +x udelwhile.sh
[root@centos ~]# ./udelwhile.sh
[root@centos ~]# id stu20
id: stu20:无此用户
id: stu20:no such user
7、猜价格游戏
[root@centos ~]# vim pricegame.sh
#!/bin/bash
PRICE=$(expr $RANDOM % 1000)
TIMES=0
echo “猜商品价格范围0-999,猜猜看是多少?”
while true
do
read -p “请输入你猜测的价格数目:” INT
let TIMES++
if [ $INT -eq $PRICE ] ; then
echo “恭喜你答对了,实际价格是 $PRICE”
echo “你总共猜测了 $TIMES次”
exit 0
elif [ $INT -gt KaTeX parse error: Expected 'EOF', got '#' at position 219: …[root@centos ~]#̲ chmod +x price…KEY" in
[a-z]|[A-z])
echo “请输入的是 字母.”
;;
[0-9])
echo “请输入的是 数字.”
;;
*)
echo “你输入的是 空格,功能键或其他控制符.”
esac
[root@centos ~]# chmod +x hitkey.sh

2】测试并确认hitkey.sh脚本的执行结果
[root@centos ~]# ./hitkey.sh
请输入一个字符,并按Ether键确认:k
你输入的是 字母,
[root@centos ~]# ./hitkey.sh
请输入一个字符,并按Ether键确认:8
你输入的是 数字,.
[root@centos ~]# ./hitkey.sh
请输入一个字符,并按Ether键确认:^[[19~
你输入的是 空格,功能键或其他控制符.
9、编写系统服务脚本
[root@centos ~]# vim myprog
#!/bin/bash
Case “$1” in
start)
echo -n “正在启动sleep服务…”
if sleep 7200 &
then
echo “OK”
fi
;;
stop)
echo -n “正在停止sleep服务…”
pkill “sleep” &> /dev/null
echo “OK”
;;
status)
if pgrep “sleep” &>/dev/null ; then
echo “sleep服务已经启动.”
else
echo “sleep服务已经停止.”
fi
;;
restart)
$0 stop
$0 start
;;
*)
echo “用法: $0 {start|stop|status|restart}”
esac
10、测试并确认myprog脚本的执行结果
[root@centos ~]# chmod +x myprog
[root@centos ~]# ./myprog start
正在启动sleep服务…OK
[root@centos ~]# ./myprog status
sleep服务已经启动.
[root@centos ~]# ./myprog stop
正在停止sleep服务…OK
[root@centos ~]# ./myprog reload
用法: ./myprog {start|stop|status|restart}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值