课程名称: Linux系统及应用实验 (linux操作系统 邵国金 张娜主编第四版)
实验老师: 中南林业科技大学李洁
实验七 shell 编程
实验内容
- 试分别用grep、sed和awk实现:对某个脚本文件ifile(比如/etc/profile)进行如下操作:
/etc/profile注释行与非注释行:
(1)显示其中的所注释行(含#开始的行,或#号前全是白空格开始的行);
①grep实现
②sed实现(d删除匹配的内容 !d为删除不匹配的内容)
③awk实现
(2)显示去除了所有注释行的内容;
①grep实现(-v反向匹配)
![]() |
②sed实现(d删除匹配的内容 !d为删除不匹配的内容)
③awk实现(!表非)
(3)显示所有的(去掉注释和空行)有效行。
①grep实现(-v反向匹配)
②sed实现(d删除匹配的内容 !d为删除不匹配的内容)(*表示0次、1次、多次;0次的时候就是/^$/d)
③awk实现(!表非)
实验总结
于/^$/ 和/^[[space]]*$/,前者是表示空行,而空行中没有字符的情况。后者space类字符是所有能产生空白的字符,包含了回车键、空格键、tab键等,*表示0次、1次、多次;0次的时候就是/^$/d。
例如创建一个1.txt文本,空行产生包括回车键、空格键、tab键,/^[[space]]*$/ 能完全显示所有情况产生的空行而/^$/不能。