Я пытаюсь сделать один пакетный файл как для резервного копирования, так и для восстановления файлов cookie для моей любимой онлайн-игры, но столкнулся с проблемой при попытке перейти мимо случайно названной папки, в которой Chrome использует свои файлы cookie.Использование произвольно сгенерированного имени папки в дереве каталогов?
Я попытался использовать команду FOR
, чтобы получить переменную, которая даст мне имя папки, а затем я буду использовать эту переменную позже в каталогах. Переменная работала нормально, когда ECHO
'd, но затем ставила %G
при вводе в каталог.
Сначала я положил в моем коде, но это был уродливый блок текста, так вот только несколько примеров:
FOR /F "tokens=*" %%G IN ('dir /B /AD "%SYSTEMDRIVE%\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data\Default\Pepper Data\Shockwave Flash\WritableRoot\#SharedObjects"') DO (
echo %%G)
Возвращаемого эхо правильного имени папки :)
Но когда я %%G
в каталоге:
copy "%SYSTEMDRIVE%\Users\%USERNAME%\AppData\Local\Google\Chrome\User Data\Default\Pepper Data\Shockwave Flash\WritableRoot\#SharedObjects\%%G\chat.kongregate.com\antiIdle_file0" "%HOMEPATH%\My Documents\Anti-Idle backup\antiIdle_file0.sol" /D /E /C /R /I /K /Y
при проверке переменной с ECHO перед ним, %%G
показывает, как %G
вместо случайной строки чисел, которая должна отображаться как.
Если я делаю что-то не так, пожалуйста, критикуйте меня. Если у вас есть предложение или альтернативный способ справиться с этим, скажите мне. Спасибо заранее.
Не то, что это то, что это неправильно, но вы можете сократить ваши пути много с помощью '% LocalAppData%' вместо '% SYSTEMDRIVE% \ Users \ % USERNAME% \ AppData \ Local'. Или, если вам нужна совместимость с XP, '% TEMP% \ .. \ Google \ etc'. :) Подробнее о [Переменные среды Windows] (http://ss64.com/nt/syntax-variables.html). – rojo