1.使用shell脚本完成20个账户的创建
1.1编写for1的shell脚本
[root@server ~] vim for1.sh
#!/bin/bash
read -p "请输入用户账户名前缀:" prefix
read -p "请输入用户的密码:" passwd
for ((i=1;i<=20;i++))
do
user=$prefix$i
if id $user &> /dev/null
then
echo "$user 存在"
else
useradd $user
if [ $? -eq 0 ]
then
echo "$passwd" | passwd --stdin $user &> /dev/null
else
echo "用户创建失败"
exit
fi
fi
done
1.2运行for1脚本
[root@server ~] bash for1.sh
1.3查看账户是否创建完成
[root@server ~] cat /etc/passwd | tail -20
2.编写一个脚本使用for循环,并通过ping命令测试网段的主机连通性
2.1编写for2脚本
[root@server ~] vim for2.sh
#!/bin/bash
read -p "" ip
read -p“请输入网段:” ip
for ((i=125;i<=135;i++))
do
IP="$ip"."$i"
if ping -c 2 -w 3 $IP &> /dev/null
then
echo "$IP is up" >> /tmp/host_up.txt
else
echo "$IP is down" >> /tmp/host down.txt
fi
done
echo"up ip:"
cat /tmp/host_up.txt
echo
echo"down ip:"
cat /tmp/host_down.txt
2.1运行for2脚本
[root@server ~] bash for2.sh
2.3查看俩个txt文档内容
[root@server ~] cat /tmp/host_up.txt
[root@server ~] cat /tmp/host_down.txt
3.使用for循环实现批量主机root密码的修改
3.1先打开多台虚拟机
3.2在主机端编写一个存放其他俩台设备ip地址的文档
[root@server ~] vim ip.txt
3.3建立免密sshd登录
[root@server ~] ssh-keygen -t rsa #一直回车
[root@server ~] ssh-copy-id root@192.168.74.130 #根据提示输一个yes和密码
[root@server ~] ssh-copy-id root@192.168.74.131 #根据提示输一个yes和密码
3.4编写shell脚本
[root@server ~] vim for3.sh
#!/bin/bash
read -p "输入密码:" passwd
for i in `cat ip.txt`
do
ssh $i "echo '$passwd' | passwd --stdin root"
done
3.5运行for3脚本并进行免密登录测试
[root@server ~] bash for3.sh
[root@server ~] ssh root@192.168.74.130