将LibreOffice文档批量转成PDF格式

时间:2021-02-15 07:06:07

使用如下命令可以将文档一次性批量导出为pdf格式:

find ./ -maxdepth  -name "*.odt" -print0 | xargs - -I '{}' /cygdrive/d/Program\ Files\ \(x86\)/LibreOffice\ /program/soffice.exe --headless --convert-to pdf '{}'

find命令的-maxdepth选项指定搜索文档时的目录深度。其值为1时,只在当前路径下搜索。本想着是否可以用*.odt通配符的形式传给soffice作参数,但是至少在Windows下不管用。所以只能借助于xargs,使用一条命令一次转换多个文件。

同时,需要注意的时,在调用soffice命令前,要关闭所有的LibreOffice程序。