如何批量提取多个pdf的第一页


0

我知道这个问题有另一个线索有许多答案; 然而,我是一个新手,其中很多都是我的胡言乱语。我想学习虽然:)

无论如何,我已经安装了ghostscript并试图使用这个脚本运行几次

for file in *.pdf ; do gs -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pdfwrite \
         -sOutputFile="${file%.pdf}-page1.pdf" -dFirstPage=1 -dLastPage=1 "$file" ;

我从这里得到了那个剧本。

我真的不知道在哪里放置我希望程序批量提取的目录名,也不知道输出文件名和输出控制器。我意识到这对大多数人来说都是基本的东西,但如果有人能帮助我,你可能会拯救我多年的工作。

谢谢!

Answers:


0

PDF文件所在的目录是当前目录,因为for files in *.pdf ; ...没有为匹配文件指定目录路径。

输出文件从形成"$file"与所述bash膨胀"${file%.pdf}-page1.pdf",它删除.pdf从文件名的末尾,并用其替换-page1.pdf,使得,例如,report.pdf生成输出文件report-page1.pdf在同一目录中。

您可以在for子句中添加目录路径,例如for files in SourceDir/*.pdf ; ...

您可以更改替换字符串; 或者您可以在前面添加目录,但如果在for子句中使用目录路径,则替换会变得更复杂。

你应该在阅读了参数扩展bash手册。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.