如何动态评估env变量?
我正在复制文件的内容并替换其中的值。我现在想到了这个:
awk -v FS="=" -v OFS="=" '$2="$"$1' source-file.txt > output-file.txt
让我们假设我们有两个env变量,key1 ='toto1'和key2 ='toto2'
结果:
source-file.txt -----------------> output-file.txt ----------> expected output-file.txt
key1=secret key1=$key1 key1=toto1
key2=secret key2=$key2 key2=toto2
如何使其评估值并打印key1 = toto1而不是key1 = $ key1?
awk -F= '{printf "%s=%sn",$1,ENVIRON[$1]}' <source_file.txt >output_file.txt
这假定变量(key1等)是真正环境变量(即导出变量),而不仅仅是shell变量。