dnk*_*nkb 19 linux awk sed command-line
我有带有空格分隔字符串 (2-5) 的大文本文件。字符串可以包含“'”或“-”。我想用管道代替第二个空格。
最好的方法是什么?
使用 sed 我在想这个:
sed -r 's/(^[a-z'-]+ [a-z'-]+\b) /\1|/' filename.txt
Run Code Online (Sandbox Code Playgroud)
任何其他/更好/更简单的想法?
mru*_*cci 26
您可以在替换命令的末尾添加一个数字。例如,以下将用 的每一行上old
的字符串替换第二次出现new
的file
:
sed 's/old/new/2' file
Run Code Online (Sandbox Code Playgroud)
因此,您可以使用:
sed 's/ /|/2'
Run Code Online (Sandbox Code Playgroud)
有关更多信息,请参见例如此 sed 教程。
归档时间: |
|
查看次数: |
43873 次 |
最近记录: |