linux shell 脚本练习,Linux练习题-shell脚本编程基础篇

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

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第1张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第2张图片

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

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第3张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第4张图片

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

图中做出的是所有硬盘分区利用率,如果取最大,用head -n1命令即可

27fc2d44495c2a2739da56bd8f32bd36.png

cf861c0e1ae9b2de0d4b399cb7f67ba3.png

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

连接过少,因此效果无法显出,如果最后顺序不对,加sort命令可排序

dcad69d18aee8de7d92d130221525e3f.png

3265efb0ceb05d631f2b0badee550698.png

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

因为sed取第几行还未学习,因此这里用head -n(取前n行数据)和tail -1(跟踪倒数第一行数据)来进行取值

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第5张图片

e4faf85aec8269fc1fddf1ab3eeefd61.png

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

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第6张图片

0c817090cd761ddf3dbc05dfdefb7a91.png

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

借鉴他人写法,此命令执行后会提示输入目标路径,依次输入后可实现任意三个目录中子目录和文件之和

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第7张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第8张图片

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

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第9张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第10张图片

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

输入一个ip,先判定是否符合格式,符合才进行下一步,不符合显示非法ip后退出脚本;

其次才是ping ip 测试通断

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第11张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第12张图片

10、编写脚本算鸡兔同笼问题,笼子里共35个头,94只脚,求兔子和鸡各多少只?

这里只做最简单的功能实现版,具体请看2.0版鸡兔同笼

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第13张图片

fc9584722978f071ddfa1876d152dc2f.png

11、编写脚本yesorno.sh,当输入y或者yes显示yes,输入n或者no显示no,大小写不敏感

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第14张图片

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第15张图片

12、编写脚本/root/bin/checkdisk.sh,检查磁盘分区空间和inode使用率,如果超过80%,就发广播警告空间将满

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第16张图片

13、编写脚本/bin/per.sh,判断当前用户对指定参数文件,是否不可读并且不可写

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第17张图片

14、编写脚本/root/bin/excute.sh ,判断参数文件是否为sh后缀的普通文件,如果是,添加所有人可执行权限,否则提示用户非脚本文件

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第18张图片

15、编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统

一条命令就可实现,脚本意义不大,此处稍作升级

linux shell 脚本练习,Linux练习题-shell脚本编程基础篇_第19张图片

你可能感兴趣的:(linux,shell,脚本练习)