我有下面的代碼加入多個文件一起多個文件。它工作正常,但我想將空值替換爲0,所以我使用-e「0」。但它不起作用。 任何想法?慶典加入空更換(-e選項)
for k in `ls file?`
do
if [ -a final.results ]
then
join -a1 -a2 -e "0" final.results $k > tmp.res
mv tmp.res final.results
else
cp $k final.results
fi
done
例如:
file1:
a 1
b 2
file2:
a 1
c 2
file3:
b 1
d 2
Results:
a 1 0 1 0
b 2 1 0
c 2
d 2
expected:
a 1 1 0
b 2 0 1
c 0 2 0
d 0 0 2
不解析ls'的'輸出;在文件中使用'k'? do'。另外,引用'$ k'的擴展來防止文件名中的特殊字符。 – chepner