
У меня есть файл изображения с именемfirst%20second.png
У меня есть test.bat
файл, который переименовывает изображения.
Выглядит это так:
Timeout 3
Copy "C:\first%20second.png" "C:\sub\first%20second.png"
Timeout 3
При запуске пакетного файла он делает следующее:
Copy "C:\first0second.png" "C:\sub\first0second.png"
Не %2
включается
почему это?
Демонстрация возникновения
решение1
Для правильного экранирования знака процента в пакетном скрипте его необходимо удвоить.
Команда
Copy "C:\first%%20second.png" "C:\sub\first%%20second.png"
Дополнительные ресурсы
Экранированные символы, разделители и кавычки
Проценты выхода из игры
Персонаж
%
имеет особое значение дляпараметры командной строкии параметры FOR.Чтобы рассматривать процент как обычный символ, удвойте его:
%%