Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Как прописать в .bat универсальный путь для удаления файла (http://forum.oszone.net/showthread.php?t=333183)

BKPB 14-02-2018 16:45 2797937

Как прописать в .bat универсальный путь для удаления файла
 
Есть вот такие строки для удаления папок:
Скрытый текст
RD /S /Q "C:\Program Files\K-Lite Codec Pack\Icons"
RD /S /Q "C:\Program Files\K-Lite Codec Pack\Info"
RD /S /Q "C:\Program Files\K-Lite Codec Pack\Tools"
RD /S /Q "C:\Program Files (x86)\K-Lite Codec Pack\Icons"
RD /S /Q "C:\Program Files (x86)\K-Lite Codec Pack\Info"
RD /S /Q "C:\Program Files (x86)\K-Lite Codec Pack\Tools"

Как прописать универсальный путь, что бы батник сам находил куда установилась программа:
Program Files или Program Files (x86) и удалил бы нужные папки.

x0r 14-02-2018 18:09 2797967

Код:

if exist "%PROGRAMFILES%\K-Lite Codec Pack\Icons\" RD /S /Q "%PROGRAMFILES%\K-Lite Codec Pack\Icons"
if exist "%ProgramFiles(x86)%\K-Lite Codec Pack\Icons\" RD /S /Q "%ProgramFiles(x86)%\K-Lite Codec Pack\Icons"

и так для каждой перепиши. тока пробовать и тестировать надо в другом месте, не в %PROGRAMFILES% и вообще rd /s /q юзать в %PROGRAMFILES% яб не стал

BKPB 14-02-2018 19:41 2797982

x0r, Мне нужно было, что бы вместо шести строк с разными путями написать три или одну (перечислив папки )
Например:
1. Что бы батник проверял куда установилась программа, Program Files или Program Files (x86) и удалил папки.
2. И можно ли удалить папки методом перечисления, типа RD /S /Q "C:\Program Files (x86)\K-Lite Codec Pack\Icons, Info, Tools"
или только для каждой папки своя строка.

x0r 14-02-2018 20:07 2797989

ну можно через for /f , только тебе все одно нужен будет список папок, какая разница.
Код:

@echo on

IF EXIST "%ProgramFiles(x86)%" (
        set pr=%ProgramFiles(x86)%\K-Lite Codec Pack
    ) Else (
        set pr=%ProgramFiles%\K-Lite Codec Pack
        )

rd /s /q "%pr%\Icons" "%pr%\Info" "%pr%\Tools"
pause
exit

просто вид другой, а по-сути тоже самое

BKPB 14-02-2018 20:13 2797992

x0r, Спасибо за помощь.
Вопрос закрыт.

x0r, Ещё спрошу.
В системе настроено расположение окна командной строки и при запуске батника оно отображается в одном и том же месте.
Но стоит конвертировать батник в .ехе оно отображается в другом месте.
Можно ли настроить его отображение в нужном месте или нет.

x0r 14-02-2018 21:06 2798003

положение у консольного окна(и вообще всё что с ним связано: цвета, размеры, буферы и проч.) берется из реестра HKEY_CURRENT_USER\Console
там создаются разделы для других програм консольных с персональными значениями(если ты настраивал окно, например в Far). Общие лежат в корне.
Порядок стандартный: если есть настр-ки для программы - беруццо они; если нету - беруццо из общего раздела; если нету и там - по дефолту(откуда хз.)
может и есть какие спец.комманды чтоб сместить окно консоли изнутри, типа color 9f , только я хз. :)


Время: 19:55.

Время: 19:55.
© OSzone.net 2001-