我想使用 grep 命令打印我正在搜索的字符串的行号。但是,当我使用该命令时,grep -n
它会打印带有冒号 : 旁边的行号。有什么办法可以使用相同的grep -n
命令来打印行号,后面跟着 : 冒号?
$ grep -n 'Captain' sometextfile.txt
3: Captain America
Run Code Online (Sandbox Code Playgroud)
我希望它改为打印,
3 Captain America
Run Code Online (Sandbox Code Playgroud)
(没有 ':' )
有什么建议??
您可以使用sed
withgrep
来实现此目的。
grep -n 'Captain' sometextfile.txt | sed 's/:/ /'
此 sed 命令查找模式:
并将其替换为(空格)。
一般语法 - sed 's/find/replace/'
此方法将仅替换:
每行中第一次出现的。因此,即使文本文件中的一行包含
:
,它也不会受到影响。