如果我有3個csv文件,並且我想將所有數據合併爲一個,但彼此相鄰,我該怎麼做?例如:如何在csv文件中彼此相鄰添加數據
初始合併文件:
,,,,,,,,,,,,
文件1:
20,09/05,5694
20,09/06,3234
20,09/08,2342
文件2:
20,09/05,2341
20,09/06,2334
20,09/09,342
文件3:
20,09/05,1231
20,09/08,3452
20,09/10,2345
20,09/11,372
最終合併文件:
09/05,5694,,,09/05,2341,,,09/05,1231
09/06,3234,,,09/06,2334,,,09/08,3452
09/08,2342,,,09/09,342,,,09/10,2345
,,,,,,,,09/11,372
從每個文件的基本數據進入合併後的文件的特定列。 我知道awk函數可以用於此,但我不知道如何開始
編輯:只有第二和第三列的每個文件正在打印。我用這個打印出來的第二和第三列:
awk -v f="${i}" -F, 'match ($0,f) { print $2","$3 }' file3.csv > d$i.csv
然而,比方說,文件1和文件2是該行空,該行的數據將被轉移到左邊。所以我想出了這個佔移位:
awk -v x="${i}" -F, 'match ($0,x) { if ($2='/NULL') { print "," }; else { print $2","$3}; }' alld.csv > d$i.csv
是的!這工作,謝謝你..請你解釋一下嗎?我理解嵌套循環,但是術語是什麼意思,到底發生了什麼? – user2883071
我把它清理了一下,並添加了一個註釋版本。如果這樣做你想要的,記得點擊它旁邊的複選標記,這樣別人不會浪費時間也試圖解決它 –
不幸的是,我不是很熟悉這種語言 - 一般來說,什麼是「:」和「?」意思? – user2883071