马哥教育网络班23期+第九周课堂练习
Linux Bash脚本编程练习
练习
1.写一个脚本,判断当前系统上所有用户的shell是否为可登录shell (即用户的shell不是/sbin/nologin) 分别统计这2类用户的个数,通过字符串比较来实现
脚本:
测试结果:
。。。
2.写一个脚本
(1)获取当前主机的主机名 保存于hostname变量中
(2)判断此变量的值是否为localhost如果是,则将当前主机名修改为www.magedu.com
(3)否则,显示当前主机名
脚本:
测试结果:
3.写一个脚本,完成以下功能
(1)传递一个磁盘设备文件路径给脚本,判断此设备是否存在
(2)如果存在,则显示此设备上的所有分区信息
脚本:
测试结果:
4.写一个脚本,完成如下功能
脚本能够接受一个参数
(1)如果参数1为quit 则显示退出脚本,并执行正常退出
(2)如果参数1为yes 则显示继续执行脚本
(3)否则,参数1为其他任意值,均执行非正常退出
脚本:
测试结果:
5.写一个脚本,完成以下功能
传递一个参数给脚本,此参数为gzip bzip2 或者xz三者之一
(1)如果参数1的值为gzip 则使用tar和gzip归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.gz
(2)如果参数1的值为bzip2 则使用tar和xz归档压缩/etc目录至/backups目录中,命名为/backups/etc-20160613.tar.bz2
(3)如果参数1的值为xz 则使用tar和xz归档压缩/etc目录至/backups目录中,并命名为/backups/etc-20160613.tar.xz
(4)其他任意值 则显示错误压缩工具,并执行非正常退出
脚本:
6.写一个脚本,接受一个路径参数
(1)如果为普通文件。则说明其可被正常访问
(2)如果是目录文件,则说明可对其使用cd命令
(3)如果为符号链接文件,则说明是个访问路径
(4)其他为无法判断
脚本:
测试结果:
7.写一个脚本,取得当前主机的主机名,判断
(1)如果主机名为空或为Localhost 或为(none)则将其命名为mail.magedu.com
(2)否则,显示现有的主机名即可
8.写一个脚本,接受一个用户名为参数
(1)如果用户的id号为0 则显示其为管理员
(2)如果用户的Id号大于0且小于500 则显示其为系统用户
(3)否则,则显示其为普通用户
脚本:
测试结果:
9.写一个脚本,传递一个用户名参数给脚本
(1)如果用户的id号大于等于500 且其默认shell为以sh结尾的字符串,则显示“a user can log system” 类的字符串
原创文章,作者:luobo3692003,如若转载,请注明出处:http://www.178linux.com/60224
评论列表(1条)
脚本的功能实现的很好,不过不建议这种以直接截图的展现代码的形式,一定要以文本方式进行展示,不仅格式更友好,以方便需要的人拷取,也更符合开源精神嘛。