shell脚本每行添加后缀

Bin*_*ics 16 linux bash shell

问题:我需要在文本文件的每一行的末尾添加一些单词.有谁知道任何可以完成这项工作的Linux bash shell脚本?谢谢!

示例:done在每行末尾添加单词:

line1 abcdefg done
line2 abcdefg done
line3 abcdeft done
Run Code Online (Sandbox Code Playgroud)

anu*_*ava 30

使用awk:

awk 'NF{print $0 " done"}' inFile
Run Code Online (Sandbox Code Playgroud)

或者使用内联标志:

sed -i.bak '!/[^[:blank:]]/s/$/ done/' inFile
Run Code Online (Sandbox Code Playgroud)

  • 解决方案的问题是,他们在文件末尾添加了一个带有“done”的额外行 - 这个是不想要的。 (2认同)