gremlintv2
27-06-2016, 22:02
Для меня задача показалась нетривиальной, поэтому я создал новую тему, если есть ответ попрошу ткнуть носом и удалить тему.
В чем заключаеться задача:
Есть такой скрипт:
for /f "delims=" %%i in ('dir /b /a:-d C:\папка') do ("c:\Program Files\PDFCreator\PDFCreator.exe" /PrintFile="C:\папка\%%i" && echo %%i)
Он прекрасно работает и конвертирует файлы в pdf, но есть проблема:
Если в имени файла встречаються незнакомые для cmd символы он их подменяет на "?". Например "Імя" -> "?мя"
Сответсвенно внутренняя команда такого имени файла не находит.
Собственно вопрос как в названии файлов заменить эти "?" на "_" ?
На форуме множество примеров как заменить определенный символ на другой, но как заменить "непонятный для cmd символ" я к сожалению не нашел =(.
Вот скрипт подставляющий в название xml файлов "12345" как я понял
@echo off
set nabor=12345
set folder=C:\1
for /f "delims=" %%A in ('dir /b /a-d "%folder%\*%nabor%*.xml"') do (
ren "%folder%\%%A" "%nabor%.xml"
)
pause
В чем заключаеться задача:
Есть такой скрипт:
for /f "delims=" %%i in ('dir /b /a:-d C:\папка') do ("c:\Program Files\PDFCreator\PDFCreator.exe" /PrintFile="C:\папка\%%i" && echo %%i)
Он прекрасно работает и конвертирует файлы в pdf, но есть проблема:
Если в имени файла встречаються незнакомые для cmd символы он их подменяет на "?". Например "Імя" -> "?мя"
Сответсвенно внутренняя команда такого имени файла не находит.
Собственно вопрос как в названии файлов заменить эти "?" на "_" ?
На форуме множество примеров как заменить определенный символ на другой, но как заменить "непонятный для cmd символ" я к сожалению не нашел =(.
Вот скрипт подставляющий в название xml файлов "12345" как я понял
@echo off
set nabor=12345
set folder=C:\1
for /f "delims=" %%A in ('dir /b /a-d "%folder%\*%nabor%*.xml"') do (
ren "%folder%\%%A" "%nabor%.xml"
)
pause