GS:制作递归脚本

GS: Make recursive script

我正在使用此脚本来调整用户上传到 FTP 的一些扫描的 pdf 文件的大小。我需要的是减小 pdf 的大小,减少处理它们的时间(上传到 s3 等)。

脚本:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

所以我的问题是:我怎样才能使这个递归?我需要减少文件夹中的所有文件。如果这样能覆盖原文件就完美了

提前致谢。

你的脚本不是脚本。它是一个命令行。

您可以编写一个 shell 脚本来遍历文件夹中的所有 *.pdf 文件,然后为每个文件调用 gs ...

像这样:

#!/bin/bash
for f in *.pdf
do
    gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=processed/$f $f
done