有时当进行某些配置文件的查看时,分去除注释(如:"#"),但之后还会发现中间也许会有好多空行,所以,现小结一下去除空行的方法。
1)用tr命令
# grep -v "#" /etc/snmp/snmpd.conf |tr -s '\n'
2)用sed命令
# grep -v "#" /etc/snmp/snmpd.conf |sed '/^$/d'
3)用awk命令
# grep -v "#" /etc/snmp/snmpd.conf |awk '{if($0!="")print}'
# grep -v "#" /etc/snmp/snmpd.conf | awk '{if(length !=0) print $0}'
4)用grep命令
# grep -v "#" /etc/snmp/snmpd.conf |grep -v "^$"
5) 用grep命令
# grep ^[^#] /etc/snmp/snmpd.conf
我解释下^[^#]/ 是个正则表达式。 ^[^#] 取的结果为非#开头的行。
注:本文中的"|"管道前是去除注释,管道后是去除空行。上面所有例子中是用grep -v来去除注释,也可以用sed -e "s/#.*//g" filename 来过滤。