Linux 删除配置文件注释行和空行

✍️Auth:star皆空       Date:2021/09/30       Cat:Linux服务器       👁️:491 次浏览

方法一: grep

以server.conf文件为例

  • 删除以#开头的行,grep显示以#开头的行(”^#”),然后 -v 取反,则显示去掉以#开头的行
grep -v "^#" server.conf
  • 删除空行,grep显示空行(”^$”),然后 -v 取反,则显示去掉空行的行 grep -v "^$"
grep -v "^$" 
  • 同时去掉空行和注释行,更改则需重写至其他文档如test.conf
bash grep -v "^#" server.conf | grep -v "^$" >> test.conf

方法二: sed

以server.conf文件为例,加参数 -i 写入更改文件,不加则预览显示

  • 找到以#开头的行(^#)并用参数 d 删除,以下两种都可以。
sed '/^#/d' server.conf 
sed '/#/d' server.conf
  • 找到空行(^$)的行,用参数 d 删除,并显示
sed '/^$/d' server.conf
  • 删除注释行和空行,并更改写入文件
sed -i -e '/#/d;/^$/d' server.conf

注:这里一定要用 -e,否则会出现 unterminated substitute pattern

打赏作者
⚑Tags:      

发表评论