にとって
1.これらのユーザーのログインアカウントを作成し、指定された従業員のリストに基づいてデフォルトのパスワードを設定します
まず、スクリプトで変数を指定するために使用される、テスト用のユーザーリストファイルが必要です。
[root@server2 ~]# vi users.txt
aa
bb
cc
dd //员工名单,后续可根据需要添加新的员工,再执行脚本创建用户
~
従業員リストにユーザーを循環的に作成するスクリプトを作成し、デフォルトのパスワード123456を設定します
[root@server2 ~]# vi useradd.sh
#!/bin/bash
ULIST=$(cat /root/users.txt) //将员工名单赋值给变量ULIST
for UNAME in $ULIST //将名单里的员工循环赋值给变量UNAME
do
useradd $UNAME //创建用户
echo "123456" | passwd --stdin $UNAME &> /dev/null //设置默认密码,执行结果不显示在执行界面
done
[root@server2 ~]# chmod +x useradd.sh //添加执行权限
[root@server2 ~]# ./useradd.sh //执行脚本
[root@server2 ~]# tail -10 /etc/passwd //验证并查看创建的用户`
結果を確認すると、ユーザーが正常に作成され、123456パスワードを使用してホストにログインできます。
2.ホームディレクトリ内のファイルをバックアップし、退職した従業員のアカウントとホームディレクトリを一緒に削除します
まず、辞任した従業員のリストを用意し、従業員ディレクトリの1つに確認用のファイルを作成する必要があります
[root@client1 ~]# vi users1.txt
aa
bb
cc
dd
[root@client1 ~]# vi uesrdel.sh //创建删除用户脚本
#!/bin/bash
ulist=$(cat /root/users1.txt) //获取离职员工名单
for uname in $ulist //遍历名单中的员工
do
a=`ls -lh /home/$uname | awk '{print $2}'` //获取员工宿主目录下的内存占用大小
if [ "$a" != "0" ] //如果用量不为0,说明有文件在其中,
then cp -r /home/$uname /userfile_backup //备份目录下的文件
fi
userdel -r $uname &> /dev/null //连带宿主目录删除用户
done
~
[root@client1 ~]# chmod +x uesrdel.sh
[root@client1 ~]# ./uesrdel.sh //执行脚本
検証結果
一方
1.名前がstu1、stu2 ...である20人のユーザーを追加します。
[root@client1 ~]# vi stu.sh
#!/bin/bash
i=1
while [ $i -le 20 ] //控制循环次数,创建的用户数
do
uname="stu$i" //赋值用户名给变量
useradd $uname
let i++
done
~
検証結果
次に、商品の価格を推測します
[root@client1 ~]# vi pricegame.sh
#!/bin/bash
price=$(expr $RANDOM % 1000) //利用系统的随机变量随机赋值一个价格,取余结果在0-999之间
times=0 //统计猜测次数首先赋值为1
echo "商品的实际价格在0-999之间,猜猜是多少"
while true //true 作为无限循环,因为不知道猜测次数
do
read -p "请输入你猜测的价格:" INT //提示从键盘输入价格
let times++ //一次价格,猜测次数加一次,times=times+1
if [ $INT -eq $price ] ; then //价格相等时
echo "答对了,实际价格是$price,你总共猜测了$times次"
exit 0 //猜对时用exit 0 退出循环
elif [ $INT -gt $price ] ; then //输入价格大于实际价格
echo "太高了"
else //输入价格小于实际价格
echo "太低了"
fi
done
[root@client1 ~]# chmod +x pricegame.sh //添加执行权限
試験結果