% 2 в пакетном файле игнорируется при выполнении в командной строке

281
Vincent Tang

У меня есть файл изображения с именем 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Не получает включены

почему это?

Демонстрация происшествия

enter image description here

1
Я нашел похожий пост, отвечая на мой вопрос https://stackoverflow.com/questions/1907057/ignore-percent-sign-in-batch-file Vincent Tang 6 лет назад 0
Вы должны удвоить знак процента, например: `Копировать" C: \ first %% 20second.png "" C: \ sub \ first %% 20second.png "` Pimp Juice IT 6 лет назад 0

1 ответ на вопрос

1
Pimp Juice IT

Вам нужно удвоить знак процента, чтобы избежать его в пакетном скрипте.

команда

Copy "C:\first%%20second.png" "C:\sub\first%%20second.png" 

Дополнительные ресурсы