Linux实用技巧-使用sed命令来删除空白行

阅读更多

Linux中,我们可以使用sed命令配合正则表达式来进行字符串匹配操作,具体形式为 sed '/pattern/' file,其中pattern为正则表达式或特定字符串, file为要操作的文件。比如说,有test.txt文件内容如下:

Linux实用技巧-使用sed命令来删除空白行_第1张图片
 
这时,想要删除test.txt文件中的第四行信息,可以使用 sed '/^This/d' 或 sed '/line!$/d' 来进行删除,其中符号^的意思代表匹配第一个字符,$代表匹配最后一个字符。

Linux实用技巧-使用sed命令来删除空白行_第2张图片
 

注意,这里删除的意思只是对输出结果作删除第四行操作,对原文件的信息并没有删除。如果想保存删除后的输出结果,可以使用重定向来保存。如:
Linux实用技巧-使用sed命令来删除空白行_第3张图片
 

上面可以看到,操作后的结果保存在testsed.txt文件中。

 

知道^, $符号分别代表匹配首尾后,我们就可以使用 sed '/^$/d' 来删除文件的空白行了,因为 /^$/ 的意思是匹配首尾且中间内容为空格的信息,即空白行:

Linux实用技巧-使用sed命令来删除空白行_第4张图片
 

由上面例子可看出空白行已被删除。

 

  • Linux实用技巧-使用sed命令来删除空白行_第5张图片
  • 大小: 10.1 KB
  • Linux实用技巧-使用sed命令来删除空白行_第6张图片
  • 大小: 6.7 KB
  • Linux实用技巧-使用sed命令来删除空白行_第7张图片
  • 大小: 13.3 KB
  • Linux实用技巧-使用sed命令来删除空白行_第8张图片
  • 大小: 8.2 KB
  • 查看图片附件

你可能感兴趣的:(Linux删除空白行,sed,正则表达式,模式匹配)