Я использую Ghost Script для работы с PDF.Я использую числовые переменные в качестве аргументов.Мое имя входного файла "x.pdf".Я хочу, чтобы выходной файл был "x-processing.pdf".Конечно, у меня есть вышеуказанный ментрионный код:
gswin64c.exe -q -dNOPAUSE -dBATCH -dSAFER -dPDFA=2 -dPDFACompatibilityPolicy=1 -dSimulateOverprint=true -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dEmbedAllFonts=true -dSubsetFonts=true -dAutoRotatePages=/None -dColorImageDownsampleType=/Bicubic -dColorImageResolution=150 -dGrayImageDownsampleType=/Bicubic -dGrayImageResolution=150 -dMonoImageDownsampleType=/Bicubic -dMonoImageResolution=150 -sOutputFile=%1%-processed.pdf -c .setpdfwrite -f %1
Так что имя выходного файла в настоящее время inputfilename.pdf-processed.pdf
.Я хочу удалить это расширение.Но я не могу понять, как.
Я пытался использовать здесь форму замены переменных: http://cplusplus.bordoon.com/cmd_exe_variables.html То есть я изменил -sOutputFile=%1-processed.pdf
на -sOutputFile=%~pn1-processed.pdf
Это не сработало.
Итак, я попытался сначала посмотреть, как использовать эти замены.Я попытался скопировать выбранное имя файла в буфер обмена, добавив эту команду через regedit: cmd.exe echo "%~n1"|clip
Это не работает.Но если я просто скажу: cmd.exe /c echo "%1"|clip
Это работает правильно и скопируйте путь к файлу с расширением в буфер обмена.
Я действительно застрял, так как не понимаю, что я делаю здесь неправильно.Пожалуйста, помогите мне.
Нет сообщений об ошибках.Нет сообщений вообще.Ничего не происходит.