如何用awk替换所有出现的符号

How to replace all occurrence of a symbol with awk

从 cmd (awk 'some expression') 我得到了格式为

的结果
Key:(white_space)Value
Key:(white_space)Value
...

如何将结果操作为以下格式:

Key=Value

我需要这个,因为我想将信息放入 .properties 文件格式,即 key=value

换句话说,我需要用 = 替换 : 并删除空格。

awk 中是否有可以实现此目的的命令?

您要求 awk,而 sed 提供同样简单的解决方案。但是,awk 也使 sub 变得微不足道:

awk '{ sub(/:[ \t]*/,"=") }1'

例子

$ echo "Key:       Value" | awk '{ sub(/:[ \t]*/,"=") }1'
Key=Value

另一个awk方法。

awk -F'[: ]' '{print  "=" $NF}' file.txt