我有两个文件:file1 和 file2 如下:
文件 1 文件 2 橙汁 orangejuice_9.88_9.88 菠萝汁appleslices_6.3_2.2 苹果片菠萝汁_1.2_3.9 芒果汁 Mangojuice_5.55_5.55
输出应该是:
橙汁_988 菠萝汁_120_390 appleslices_630_220 芒果汁_555
从 file1 逐行读取时,在 file2 中查找 file1 所在行中的模式,找到后比较 file2 的第 2 和第 3 字段,如果相同则打印一次,否则打印两个数字。(无论如何,数字应该乘以 100)
我想到了这个:
while read -r -u 3 line1
do
nawk ' "$line1" print $0}' file2.txt
if "$2" == "$3"
then echo "scale=2;$2*100" |bc
else echo "$2_$3"
fi
done 3<file1.txt
所以,我想知道逻辑是否正确,并修复将给我 988 而不是 988.0 的乘法。