我的目标是从awk打印命令中输出(同时保持格式)并使用它来替换文件中的某些文本。
目前即时通讯使用: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来查找并在文件中有数组$替换文本具有相同格式的2列。
sed -i s/"mach data"/"${mach[*]}"/g nodedata.txt
然而这样做的结果是
1 0.77492 2 0.18022 3 0.29596 4 0.5229 .......
我如何能保留格式的任何想法,以取代马赫数据?
干杯
它是什么,你想干什么?你想在输出中保留换行符吗?如果是这样,为什么你使用一个数组将拆分所有内容并删除所有空格? –
我对任何一种脚本都很陌生,所以我很抱歉如果我使用错误的东西。 是的我想保留在输出中的新行,认为我必须将其设置为一个数组,而不是一个变量。然而,无论何时我尝试使用sed与mach作为变量而不是数组,它不会替换具有正确数据的单词,只是单词“mach” –