0

我想编写一个 python 脚本来自动将 libreoffice ott 模板转换为普通的 odt 文件。如果我转到终端(bash shell)并输入:

soffice --headless --convert-to odt "/path/template.ott" --outdir '/targetpath/template.odt'

输出如预期的那样,一个位于新目标位置的 odt 文件。

当我编写脚本时(如下所示:

oldfile
outdir = pipes.quote(/targetpath/template.odt)
subprocess.call(['soffice --headless --convert-to odt /path/template.ott --outdir /pathtarget/template.odt'])

输出给了我

[Errno 2] No such file or directory

当我尝试像这样拨打电话时:

subprocess.call(["soffice", "--headless", "--convert-to", "odt", pipes.quote(oldpath),outdir])

结果是soffice的helptext,原因是:

    LibreOffice 4.2.8.2 420m0(Build:2)

    Unknown option: --outdir /targetpath/template.odt
...
4

1 回答 1

-1

为什么不尝试使用 os.system ?

os.system('soffice --headless --convert-to odt "/path/template.ott" --outdir "/targetpath/template.odt"')
于 2016-06-21T11:14:22.493 回答