次の形式のCSVファイルがあります。
1.csv
1,2,3,4,5,6,7,8
2.csv
2,4,5,7,8,8,9,5
3.csv
2,3,4,5,6,7,8,9
...。
18.csv
まで。
result.csv
の結果を次のようにします。
1,2,3,4,5,6,7,8,2,4,5,7,8,8,9,5,2,3,4,5,6,7,8,9
cat
を試しましたが、次々に追加されます。また、1.csv
が次のように変換されるようにCSVを転置したいと思います。
1
2
3
4
5
6
7
8
Result.csvファイルを次のように取得しました。
for i in {1..18}; do paste $i.csv; done | paste -s > result.csv
または猫と:
for i in {1..18}; do cat $i.csv; done | paste -s > result.csv
(すべてをpaste/catでまとめてから、出力を-s
でフォーマットして、1行にまとめます。)
ループの回避:
cat {1..18}.csv | paste -s > result.csv
1.csvを転置するには:
sed 's/,/\n/g' 1.csv
(キャリッジリターンでコンマを変換するだけです)
Parte1:
paste -d, {1..18}.csv
一般的な転置にはdatamashを使用します。
cat {1..3}.csv | datamash -t, transpose
1,2,2
2,4,3
3,5,4
4,7,5
5,8,6
6,8,7
7,9,8
8,5,9