使用PDFtk 服务器,我想将 PDF 文件旋转 90˚ 并将其保存在原位,以覆盖输入文件。我尝试了以下操作,但失败了,可能是因为它在文件读取完成之前就开始写入。
pdftk in.pdf cat 1-endright output - > in.pdf
答案1
在调用 pdftk 之前,在操作 bash 中覆盖 .pdf 文件。你不能那样做。我建议使用类似
pdftk in.pdf cat 1-endright output in-new.pdf && mv in-new.pdf in.pdf
当转换失败时,此命令还可以保护您 - 文件不会被覆盖。
答案2
使用moreutils
sponge
为了这:
pdftk in.pdf cat 1-endright output - | sponge in.pdf
我发现的一个错误是,pdftk
发生错误时并不总是返回非零值,这意味着in.pdf
可能会被擦除(sponge
如果退出状态为零则不会擦除)。