web-dev-qa-db-ja.com

理想的にはコマンドラインを使用して、複数の.csvファイルを1つのマルチシート.xlsスプレッドシートに変換する方法はありますか?

理想的にはコマンドラインを使用して、複数の.csvファイルを1つのマルチシート.xlsスプレッドシートに変換する方法はありますか?

CLIソリューションがない場合は、理想的にはawkまたはPascalで動作するAPIがあるかどうかを知っておくと便利ですが、それがうまくいかない場合は、かなりうまくいきます。

14
Peter Brooks

コマンド ssconvert を使用できます。

ssconvert example.csv example.xls

複数のファイルに対してこれを行うには、csvファイルに対してbashループを作成し、ジョブを実行する必要があります。ここにヒント:

for i in *.csv; do ssconvert "$i" "${i%.*}".xls; done

編集:

単一のxlsファイルに変換してマージする場合も、ssconvertを使用できます。

ssconvert --merge-to=output.xls file1.csv file2.csv ....

または簡単に

ssconvert --merge-to=output.xls *.csv 
16
Maythux