为什么 sed 给我这个错误:...未知命令:`^'

为什么 sed 给我这个错误:...未知命令:`^'

我想 sed 从文件中删除空行。我使用了这个命令:

cat file | sed '; ^$ ; d'

并出现以下错误:

 sed: -e expression #1, char 3: unknown command: `^'

为什么会发生这种情况? sed 不应该解释^为“行的开头”吗?如果是这样,为什么我会收到此错误消息?

答案1

(更)正确的方法是

cat file | sed '/^$/d'

但我相信人们对于删除空行的方法会有很多答案。

相关内容