shell学习之脚本练习---------(1)
学员命令测试 1:
- ifconfig 网卡 可以显示此网卡的信息
- 显示信息中包含此网卡使用的ip地址
- 请用命令过滤此ip并在输出时只显示ip其他信息不显示
脚本编写:
结果:
反思:在练习的过程中,我才真正的理解了-d 指定分隔符是如何使用的。在写脚本的过程中要是可注意到自己想要实现的作用是什么:“ 如果网卡名称为空,要提示网卡名称;如果网卡名称正确,则得到正确的结果;如果网卡名称错误,报错即可”
学员检测 2:
file_check.sh 在执行时
- 如果脚本后没有检测文件报错“未指定检测文件,请指定”
- 如果脚本后指定文件不存在报错“此文件不存在”
- 当文件存在时请检测文件类型并显示到输出中
一开始(没有完成单纯的显示文件类型)
修改后
反思:编写脚本的时候,“没有检测文件”和“指定文件不存在”这两部分当时除了点问题。错误原因是使用了[ -f "$1" -o -d "$1" ]
来查验是否存在文件或目录,但是这样就与[ -e "$1" ]
的作用相重复后,后来仔细思考了一下其中的逻辑关系:
- 文件是否存在 [ -e “$1”]
- "$1"是否为空 [ -z “$1”]
学员命令测试 3:
- ls -l 目录 可以显示目录中所有文件案的属性
- 请按照文件大小进行排序并找出最大的2个文件并显示其名称
方法一:
方法二:
使用man ls查询ls的使用方法可以发现,直接使用ls -S即可进行排序!!