Linux bash : how to replace 2 words in a file from bash command line

标签 linux bash awk sed

我需要从 Bash 命令行替换文件中的 2 个单词,例如: 文件A.txt

xxxx AA BB xxx 

我需要将 Bash 命令行中的“AA BB”替换为“CC DD”,因此文件将变为:

xxxx CC DD xxx

感谢您的帮助!

最佳答案

您可以尝试以下sed命令,

sed -i 's/AA BB/CC DD/g' file

示例:

$ echo 'xxxx AA BB xxx' | sed 's/AA BB/CC DD/g'
xxxx CC DD xxx

通过 awk,

awk '{sub(/AA BB/,"CC DD")}1' infile > outfile

示例:

$ echo 'xxxx AA BB xxx' | awk '{sub(/AA BB/,"CC DD")}1'
xxxx CC DD xxx

关于Linux bash : how to replace 2 words in a file from bash command line,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24358367/

相关文章:

linux - 为什么陷阱在管道中不起作用

bash - 如何让带重音的字母在 bash 上实际工作?

linux - GAWK 脚本 - 在 BEGIN 部​​分打印文件名

linux - 在一行中搜索多个关键字

c - 在 UNIX 中将文件从一个位置移动到另一个位置

bash - 在kubernetes中创建一个可以运行GNU屏幕的Pod

awk - 花括号后面的数字有什么作用?

linux - 使用 grep 查找函数

linux - 阻止 Linux 将文件添加到内存缓存中?

bash - 对于另一列中列出的相同条目 ID,打印一列中具有最大值的行