bashループでpasteコマンドを使用して、CSVファイルに新しい列を追加しています。CSVファイルを再利用したいのですが。現在、これを実現するために一時ファイルを使用しています。
while [ $i -le $max ]
do
# create text from grib2
wgrib2 -d 1.$(($i+1)) -no_header myGribFile.grb2 -text tmptxt.txt
#paste to temporary file
paste -d, existingfile.csv tmptxt.txt > tmpcsv.csv
#overwrite old csv with new csv
mv tmpcsv.csv existingfile.csv
((i++))
done
いくつかの列を追加した後、ファイルがどんどん大きくなっているため、コピーが遅くなっています(すべてtmptxt.txt
が約2 MBで、約100 MBに追加されます)。
Atmptxt.txt
は、1つの列と1行に1つの値を持つプレーンなtxtファイルです。
1
2
3
.
.
その後existingfile.csv
、
1,1,x
2,2,y
3,3,z
.,.,.
.,.,.
貼り付けコマンドを使用して既存のファイルに列を追加する方法はありますか?または他の方法はありますか?
ありがとう