在不精确键的情况下查找和替换文件中所有键的值的最佳方法是什么?
示例:
originalFile.txt ------------------------------------> newFile.txt
key1=a key1=$key1
key2=b key2=$key2
key3=c key3=$key3
我想到了这个,但我无法为任何新添加的 key 动态地做到这一点:
sed '/^key1/s/=.*$/= $key1/' newFile.txt
最佳答案
awk -vFS="=" -v OFS="=" '$2="$"$1' originalFile.txt
使用sed
:使用反向引用捕获\1
中=
的左边和=
中的右边\2
:
sed -r 's/(^[^=]+)*=(.*)/\1=$\1/g' originalFile.txt
key1=$key1
key2=$key2
key3=$key3
关于linux - 使用 Bash 将所有文件键替换为新值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55186039/