QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1831|回复: 5

如何用grep查看文件内容时剔除空白行?

[复制链接]
发表于 2004-11-30 10:14:36 | 显示全部楼层 |阅读模式
grep -v '^#' /etc/samba/smb.conf|grep -v '^;'
在查看smb.conf文件时可以用上面的语句剔除以#或;开头的行,但我还想继续剔除结果中的空白行,如何做?
发表于 2004-11-30 10:29:39 | 显示全部楼层
awk '$0 !~ /^$/'

正规表达式之道

http://sitescooper.org/tao_regexps.html
回复

使用道具 举报

 楼主| 发表于 2004-11-30 10:57:37 | 显示全部楼层
看了troll推荐的文章,命令行有了改进
grep -v '^[#;]' /etc/samba/smb.conf
但awk '$0 !~ /^$/'还是太复杂了,有没有简单一点的方法?
回复

使用道具 举报

 楼主| 发表于 2004-12-3 10:26:51 | 显示全部楼层
又有新进展:

grep -v '^[#;]' /etc/samba/smb.conf|cat -s
cat -s 当遇到有连续两行以上的空白行,就代换为一行的空白行

已经基本满足我的要求了!  

顺便说一句,more和less都有这个-s选项,更好用了!
回复

使用道具 举报

发表于 2004-12-3 19:19:17 | 显示全部楼层
grep -v '^$' /etc/samba/smb.conf
回复

使用道具 举报

 楼主| 发表于 2004-12-6 11:52:49 | 显示全部楼层
谢谢updatedb, 现在这个命令总算“完美”了!
grep -v '^[#;]' /etc/samba/smb.conf|grep -v '^$'>temp.txt
查看smb.conf的有效配置行,其他配置文件也同理了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 16:03 , Processed in 0.044982 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表