Linux系统的shell编程练习题
①写脚本,将当前目录内的以.sh为扩展名的文件全部加上可执行权限。
在shell中$HOME
代表当前目录,chomd +x 文件名
为文件加上可执行权限。
$HOME/*.sh
指的便是当前目录下所有以.sh
结尾的文件,进行for循环逐个添加可执行权限。echo
为输出提示语句,ls -l
修改完可执行权限直接查看修改是否成功。
运行效果:
②脚本程序,以目录为参数,显示目录中大小是0的文件,并且删除它
$1
:作为参数,直接获取输入的第一个参数。
-s $file
:检测文件是否为空(文件大小是否大于0),不为空时返回true。此时使用非运算! -s $file
令文件为空时返回true。
根据输出提示语句即可证明脚本执行结果。
③脚本程序,遍历当前目录下的文件,如果有大小为0的文件,则中断循环,并输出其名字。
break可跳出循环,终止循环执行。
④函数的退出以及返回值的获取。(输入一个大于0的数,计算1-该数的和)
read
为输入一个参数,$?
可以获得上一条命令执行后返回的结果。
⑤脚本程序读取用户输入,并实现以下功能:
若用输入是1,则要求用户输入目录,并删除目录内大小是0的文件;
若用户输入是2,则要求用户输入目录,并将目录内所有文件的写权限去除;
若用户输入是3,则退出程序。