1、编写脚本/root/bin/systeminfo.sh,显示当前主机系统信息,包括主机名,IPv4地址,操作系统版本,内核版本,CPU型号,内存大小,硬盘大小。

shell脚本练习题_第1张图片

wKiom1eubNfClkd5AAAlzBDJ388104.png-wh_50

2、编写脚本/root/bin/backup.sh,可实现每日将/etc/目录备份到/root/etcYYYY-mm-dd中

shell脚本练习题_第2张图片

3、编写脚本/root/bin/disk.sh,显示当前硬盘分区中空间利用率最大的值

shell脚本练习题_第3张图片

wKiom1eubVPBlhLuAAAJTdQMn3o815.png-wh_50

4、编写脚本/root/bin/links.sh,显示正连接本主机的每个远程主机的IPv4地址和连接数,并按连接数从大到小排序

wKiom1eubWaTzRtXAAAWUAUKcr8879.png-wh_50

wKioL1eubWaTpCJhAAAL-5fc1P8696.png-wh_50

5、写一个脚本/root/bin/sumid.sh,计算/etc/passwd文件中的第10个用户和第20用户的ID之和

shell脚本练习题_第4张图片

wKiom1eubaiCM0C-AAAJsnLRh14822.png-wh_50

6、写一个脚本/root/bin/sumspace.sh,传递两个文件路径作为参数给脚本,计算这两个文件中所有空白行之和

shell脚本练习题_第5张图片

wKiom1eubb_yeGZsAAALHSiOvXQ968.png-wh_50

7、写一个脚本/root/bin/sumfile.sh,统计/etc, /var, /usr目录中共有多少个一级子目录和文件

wKiom1eubeOyWB0TAAAfP1zsy24300.png-wh_50

wKioL1eubeTjBDiVAAAMoFwl6dw687.png-wh_50

8、写一个脚本/root/bin/argsnum.sh,接受一个文件路径作为参数;如果参数个数小于1,则提示用户“至少应该给一个参数”,并立即退出;如果参数个数不小于1,则显示第一个参数所指向的文件中的空白行数

wKiom1eubhuzyCOmAAAUrwKE0jA071.png-wh_50

wKioL1eubhuDjFe5AAAOjqFU3Ag399.png-wh_50

9、写一个脚本/root/bin/hostping.sh,接受一个主机的IPv4地址做为参数,测试是否可连通。如果能ping通,则提示用户“该IP地址可访问”;如果不可ping通,则提示用户“该IP地址不可访问”

wKioL1eubjWiTrBTAAAL9dOVfh0913.png-wh_50

wKiom1eubjWx1o0lAAAOjgZXOoQ007.png-wh_50

10、判断硬盘的每个分区空间和inode的利用率是否大于80,如果是,发邮件通知root磁盘满

(df ;df -i ) |grep "/dev/sd" | tr -s ' ' |cut -d" "  -f5 |grep -o "[[:digit:]]\+"  |sort |tail -1



11、指定文件做为参数,判断文件是否为.sh后缀,如果是,添加x权限

wKioL1eubk_h46bNAAASzB2KwpE349.png-wh_50

shell脚本练习题_第6张图片

shell脚本练习题_第7张图片

12、判断输入的IP是否为合法IP

13、计算1+2+3+...+100的和

shell脚本练习题_第8张图片


14、输入起始值A和最后值B,计算从A+(A+1)...+(B-1)+B的总和