首页 > 解决方案 > sed 命令打印出整行

问题描述

我在 UNIX 中使用 sed 时遇到问题。我想打印出字母 I 的每个实例,但是这个命令每次找到 I 时都会打印出整行。有什么建议吗?例如:如果该行是“我想要的东西”,我希望它只打印出 I 而不是整行。

find | sed -nE '/\bI\b/p' file.txt 

标签: unix

解决方案


因为这是您告诉它要做的事情:

  • -n表示默认不打印行
  • /\bI\b/表示匹配一个单独的字母I
  • p表示打印与前一个模式匹配的行

也许这就是您想要的,匹配所有内容,但I什么都不替换:

]$ echo "xIxIxIx" | sed 's/[^I]//g'
III

推荐阅读