Linuxツールまたは変換に利用できるスクリプトがあるかどうかを知りたい.xlsx
ファイルから.txt
。
もう1つの方法は、名前を.Zipに変更し、すべての。*** xファイルがxmlを含むzipフォルダーであるため、解凍することです。内部には、サブフォルダー「worksheets」を含むフォルダー「xl」があり、内部には各ワークシートのxmlファイルがあります。それらの形式は非常に単純であり、どのxmlパッケージでも簡単に解析できるはずです。
Linuxのツールについてはわかりませんが、 Google Docs を使用できます。
そこでスプレッドシートをアップロードし、それをtxtとしてエクスポートできます。
テキスト/数値データだけの場合(そうでないと、テキストファイルは少し野心的です)、 xlsx2csv を試してスプレッドシートからCSVファイルを生成できます。
その有効性を保証することはできませんが、試してみる価値はあります。
シェルスクリプトではなく(10月20日のアンディの投稿に記載されているスクリプトとは異なり)、pythonスクリプト:
同じ名前-- xlsx2csv
ただし、これは日付値を浮動小数点数としてエクスポートします。
2012/07/01 => 41091、
"2012/07/01 01:00:00" => 41091.0416666667
xlsx2csv.py --help
Usage: xlsx2csv.py [options] infile [outfile]
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-s SHEETID, --sheet=SHEETID
sheet no to convert (0 for all sheets)
-d DELIMITER, --delimiter=DELIMITER
delimiter - csv columns delimiter, 'tab' or 'x09' for
tab (comma is default)
-p SHEETDELIMITER, --sheetdelimiter=SHEETDELIMITER
sheets delimiter used to separate sheets, pass '' if
you don't want delimiters (default '--------')
-f DATEFORMAT, --dateformat=DATEFORMAT
override date/time format (ex. %Y/%m/%d)
-i, --ignoreempty skip empty lines
-r, --recursive convert recursively
コマンドラインではありませんが、OpenOfficeは.xlsxファイルを読み取り、csvとして保存できます。おそらくすでにLinuxマシン上にあります。
以下のコマンドを使用して、現在のディレクトリにあるすべてのxlsxファイルを変換しました(Libre Officeがインストールされている必要があります)。
for i in *.xlsx; do libreoffice --headless --convert-to csv "$i" ; done