Shell脚本练习题

脚本题目
编写脚本,计算1到100的总和;

编写脚本,输入一个数字n并计算1到这个数的总和。要求:如果这个数小于等于1,要求重新输入,直到输入大于1的数字为止;

编写脚本,把/root/目录下的所有目录复制到/tmp/目录;

编写脚本,批量建立用户,要求用户名的格式为user_00/user_01,建立100个,且用户同属于users组;

编写脚本,在/cjk/目录下的所有文件(不含目录)的文件名后面加.bak;

编写脚本,给系统中所有已存在的用户打个招呼,格式参考为hello penndu and your id is 1000。

参考答案
一题:

!/bin/bash

sum=0
for i in seq 1 100
do
sum=$[$i+$sum]
done
echo $sum
二题:

!/bin/bash

n=0
while [ $n -lt 1 ]
do
read -p “Please input a number, it must greater than 1: “ n
done
sum=0
for i in seq 1 $n
do
sum=$[$i+$sum]
done
echo $sum
三题:

!/bin/bash

cd /root/
for f in ls
do
if [ -d $f ] ; then
cd -r $f /tmp/
fi
done
四题:

!/bin/bash

groupadd users
for i in seq -w 0 99
do
useradd -g users user_$i
done
五题:

!/bin/bash

cd /cjk/
for f in ls
do
if [ -f $f ] ; then
mv $f $f.bak
fi
done
六题:

!/bin/bash

for i in cat /etc/passwd
do
username=echo $i | cut -d : -f 1
id=echo $i | cut -d : -f 3
echo “hello $username and your id is $id”
done