バッチファイルを使って古いPDFファイルを圧縮しようと思ってます
先日、こちらで圧縮方法は教えていただいて(ghostscript)うまくいったのですが
しかしなぜだかフォルダ内のファイルをまとめて圧縮しようとするとうまくいかず困っています
forfilesの中にfor文をかいているからでしょうか?
以下の様に別名で保存すれば問題はないのですが、同じ名前だとファイルが3kとかになりpdfが開けなくなります。。。
forfiles /P C:\pdf /S /M *.pdf /C "cmd /c if @isdir==FALSE for /r %%A in (*.pdf) do gswin64c -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=%%A %%A" /D -90
上記の様に90日以前のpdfは圧縮としたいのですが
結果はPDFが壊れる?のか中身が真っ白なPDFになります。
forfiles /P C:\pdf /S /M *.pdf /C "cmd /c if @isdir==FALSE for /r %%A in (*.pdf) do gswin64c -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=%%A_2.pdf %%A" /D -90
などoutputのファイル名を%%A_2.pdfのように変更すれば問題ないのですが
同じ名前にしたいのです。
ググっても
forfilesの中にforをかいている例がなかったので、描き方が悪いのかなあと。。。
ご教示願います!
回答1件
あなたの回答
tips
プレビュー