Excelファイル(~.xls/~.xlsx)をLinuxコンソール上でCSV方式に変換する方法
Pocket

よくある、利用される問題だからなのか、LinuxやMac OS XでExcelファイル(.xlsや.xlsxファイル)をコンソール上でCSV方式に変換するためのコマンドは数多く用意されている。
で、今回はその中でも使えそうなものを2つほど抜粋してみようと思う(エクシェル芸な勉強会近いし)。

1.xlsx2csv

こういった用途では一番多く使われているだろう、xlsx2csvコマンドを用いての変換。
xlsx2csvコマンド自体は以下でインストールができる。

pip install xlsx2csv

 

CSV形式への変換は以下のコマンドで行える。
オプションでどのシートを変換するかについても選べるので、複数シートがある場合でも問題ないだろう。

xlsx2csv ExcelファイルPATH [CSVファイルPATH]
[root@BS-PUB-CENT7-01 ~]# xlsx2csv Book2.xlsx
,test,1234,2222,3456,
,tertete,gdgrhg,3333,gdgrhg3333,
Sponsored Links

2.in2csv(csvkit)

こちらでも触れたのだが、『csvkit』というツールの変換コマンドである「in2csv」を使うことで変換する。
『csvkit』のインストール方法は以下。

pip install csvkit

 

ExcelからCSV形式に変換する「in2csv」の実行方法は以下。

in2csv ExcelファイルPATH
[root@BS-PUB-CENT7-01 ~]# in2csv Book2.xlsx
,,,,
,test,1234,2222,3456
,,,,
,tertete,gdgrhg,3333,gdgrhg3333

 

実行結果をxlsx2csvと見比べると、どうも数式が入ってると余計な行を挟んでくるようだ。
とりあえず、CSVに変換するだけであればxlsx2csvがあればどうにかなりそうだ。

Pocket

Written by blacknon

インフラ系のSE。一時期はプログラマ。 仮想化とオープンソースに興味あり。一日中寝てたい今日このごろ。 スペインとかで働きたいなぁ…(シエスタがあるので)

Leave a Comment

メールアドレスが公開されることはありません。