[Mac] フォルダー内の Excel ファイルを csv に一括変換する

Mac でフォルダー内に複数の Excel ファイルがあるとき、それらを csv ファイルに一括変換することにした。

環境:macOS Catalina Version 10.15.6(英語環境)

(1)コマンドラインで xlsx ファイルを csv に変換する、xlsx2csv というツールをインストールする。

$ sudo pip install xlsx2csv

例えば以下のコマンドで、abc.xlsx を abc.csv に変換できるようになる。

$ xlsx2csv abc.xlsx abc.csv

(2)以下のコマンドでフォルダー内のすべての xlsx ファイルに対して csv ファイルに一括変換する。

$ find . -name '*.xlsx' -exec xlsx2csv {} {}.csv \;

参考:
zitsen/xlsx2csv.rs: Excel (eg. .xlsx/.xls) to CSV/TSV Format Converter in Rust
https://github.com/zitsen/xlsx2csv.rs

findとxargsの基本的な使い方 -- ぺけみさお
https://www.xmisao.com/2013/09/01/how-to-use-find-and-xargs.html

findコマンドで-execオプションを使用する時の最後の「{} ;」ってなんだっけ? - Qiita
https://qiita.com/legitwhiz/items/e609537fb6226081f5b5

findコマンドで-execオプションを使用する時の最後の「{} ;」ってなんだっけ? - @legitwhiz
https://legitwhiz.github.io/technology_memo/find_command-exec_option.html


この記事が気に入ったらサポートをしてみませんか?