当 Libreoffice 实例为 运行 时,使用命令行将 ODS 转换为 CSV

Convert ODS to CSV using command line when Libreoffice instance is running

我在 LibreOffice 中处理一个 ODS 文件,我时不时地想从命令行将它转换为 CSV。 为此,我找到了两个工具:libreoffice --headless --convert-to csvunoconv -f csv,但是当存在 LibreOffice 运行.[=13= 的 UI 实例时,其中的 none 可以工作]

有没有办法从命令行将 ODS 文件转换为 CSV,而 LibreOffice UI 实例是 运行?

要在 LibreOffice 运行ning 时在命令行上转换 csv,只需跳过 --headless 参数。以下命令(PowerShell 中的 运行)即使在 C:\TEMP\Untitled1.ods 时也对我有效。 /tmp/Untitled1.ods 已在 LibreOffice Calc 中打开:

Windows 10(使用 LibreOffice 7.0.1 测试)

& 'C:\Program Files\LibreOffice\program\soffice.exe' --convert-to csv --outdir C:\TEMP\ .\Untitled1.ods

或类似的,如果当前工作目录是C:\Program Files\LibreOffice\program\:

.\soffice --convert-to csv --outdir C:\TEMP\ C:\TEMP\Untitled1.ods

Linux(使用 LibreOffice 6.4.6 测试)

soffice --convert-to csv --outdir /tmp/ /tmp/Untitled1.ods

在 linux 上,您也可以使用 libreoffice 命令代替 soffice(似乎是 linux-specific...):

libreoffice --convert-to csv --outdir /tmp/ /tmp/Untitled1.ods

在所有情况下,Untitled.csv 都在预期的位置创建。