Я не могу ни за что в жизни выяснить то, что я пропускаю. У меня есть следующий пакетный файл:
Когда я выполняю этот пакетный файл со своего стола против сетевого диска, он работает очень хорошо
FOR /D /r %%G in ("*") DO pdftk "%%G\*.pdf" cat output "%%G\Report.pdf"
Когда я выполняю тот же точный пакетный файл на самом сервере, место, где сетевой диск расположен на, он не выполняет и заставляет меня думать, что у меня есть проблема синтаксиса
Я просто не понимаю то, что продолжается, и моим глазам нелегко отслеживать то, что могло бы отличаться. Сервер, где это не работает, является окнами 2003, мой рабочий стол, где тот же пакетный файл работает, является Windows 7.
Проблема похожа на Вас, может сделать подстановочное расширение в части набора Вашей команды, ("*")
, но параметры команды "%%G\*.pdf"
не становятся расширенными. Почему это ведет себя несовместимо от одной машины до другого, я не уверен.
Так как Вы только хотите обработать документы PDF, переместитесь, подстановочный знак * заставляют Вас управлять как:
FOR /D /r %%G in ("*.pdf") DO pdftk "%%G" cat output "%%G\Report.pdf"
FOR /D /r %%G in ("*") DO pdftk "%%G\*.pdf" cat output "%%G\Report.pdf"
Попробуйте это
FOR /D /r %%G in ("*") DO pdftk %%G\*.pdf cat output "%%G\Report.pdf"
Цитаты вокруг "%%G\*.pdf"
Я верю, сделал *, похожи на букву к пакетной команде и не подстановочному спецификатору.
извините, если это старо, но я просто нашел его и использовал его.