Linuxシェルスクリプトでxlsxをxlsに変換する

Linuxシェルスクリプトでxlsxをxlsに変換する

シェルコマンドを使用して、「.xlsx」ファイルを「.xls」に変換する必要があります。

私のタスクでは現在xlsx2csvコマンドを使用していますが、要件が変更されているため、追加の計算のためにすべての「.xlsx」ファイルを「.xls」ファイルに変換する必要があります。

この目的のために、私の職場の一部の人々は「.xlsx」を「.xls」に変換するコマンドを開発しましたが、このコマンドは一枚の紙でのみ機能します。

1つのファイルに複数のワークシートがあります。

よろしくお願いします。

答え1

LibreOfficeがインストールされている場合は、次のコマンドを使用できます。

libreoffice --headless --convert-to xls myfile.xlsx

それ以外の場合:

libreoffice --convert-to xls myfile.xlsx

最新バージョン(>= 4.5)では--convert-to暗黙的に--headless

これは生成されますマイファイル.xls、オリジナルを維持します。マイファイル.xlsx- したがって、変換が成功したことを確認した後、クリーンアップが必要になる場合があります。

答え2

ssconvertgnumericのコンバーターツールを試してみることもできます。

ssconvert in.xlsx out.xls

(一般的に参照man ssconvert

~のためノーマルたとえば、これは大丈夫です。入力ファイル非常に進化した(libreoffice および gnumeric) ベースのコンバーターでは、一部の詳細が失われる可能性があります。

関連情報