我的目标是从awk打印命令中获取输出(同时保持格式化)并使用它来替换文件中的某些文本。
目前即时使用:
declare -a mach=($(awk -F',' 'NR>1{print NR-1, $8}' mag_grad.csv))
给出:
1 0.77492
2 0.18022
3 0.29596
4 0.5229
等...
我尝试使用sed来查找和替换文件中带有数组$ mach的文本,格式为2列。
sed -i s/"mach data"/"${mach[*]}"/g nodedata.txt
然而,结果是用
替换马赫数据1 0.77492 2 0.18022 3 0.29596 4 0.5229 .......
关于如何保留格式的任何想法?
干杯
答案 0 :(得分:1)
尝试:
mach=$(awk -F',' 'NR>1{print NR-1, $8}' mag_grad.csv)
sed -i "s/\x22mach data\x22/${mach//$'\n'/\\n}/" nodedata.txt