Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти папку

Ответить
Настройки темы
CMD/BAT - [решено] Найти папку

Новый участник


Сообщения: 33
Благодарности: 3

Профиль | Отправить PM | Цитировать


Изменения
Автор: VladoSer
Дата: 30-08-2021
Здравствуйте.
Необходимо создать .bat, пытаюсь написать, но получается не очень


Суть:

Есть предположим такие каталоги:
C:\Users\имя пользователя\AppData\Local\Packages
C:\Windows\SystemApps


В этих каталогах есть папки с именем таким:
То, что выделено красным может иметь другие цифры (тк версия установленного edge может отличаться на разных ПК)


Те папки, чье имя начинается на "Microsoft.MicrosoftEdge...." необходимо найти их в указанных каталогах и удалить .

благодарю за любую помощь.

Отправлено: 13:01, 30-08-2021

 

Аватара для NickM

Ветеран


Contributor


Сообщения: 4553
Благодарности: 1085

Профиль | Отправить PM | Цитировать


VladoSer, а разве таким "варварским" способом удаляются UWP-приложения из Windows?
Это сообщение посчитали полезным следующие участники:

Отправлено: 13:09, 30-08-2021 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 33
Благодарности: 3

Профиль | Отправить PM | Цитировать


Цитата NickM:
а разве таким "варварским" способом удаляются UWP-приложения из Windows? »
Здравствуйте, нет, я их вообще твикером удаляю, но остатки все равно есть.

Это как пример, пусть там будет другая папка , с другим каталогом. Я просто хочу понять как сделать такой .bat с поиском по части имени в указанных каталогах и дальнейшем удалением данных папок.

Отправлено: 13:14, 30-08-2021 | #3


Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
cls
	For /F "usebackq delims=" %%d In (`2^>nul Dir "C:\Users\%USERNAME%\AppData\Local\Packages\Microsoft.MicrosoftEdge*" /S /B /A:D`) Do Echo Rd "%%d" /s /q
pause
Exit /B 0
Для реального удаления уберите Echo

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:40, 30-08-2021 | #4


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6626
Благодарности: 1528

Профиль | Отправить PM | Цитировать


VladoSer, удаляйте нормальным способом. Ничего хорошего вы удалением папки не добьётесь, это удаление гланд автогеном как в старом анекдоте.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:22, 30-08-2021 | #5


Новый участник


Сообщения: 33
Благодарности: 3

Профиль | Отправить PM | Цитировать


DJ Mogarych,
Здравствуйте, речь идет именно про папки Edge?

Вообще, как выше сообщалось, хочется не только для этого использовать конструкцию, может пригодится кому либо для удаления большого количества папок по маске.

megaloman,
А если , предположим, известно точное название папки , не ее часть, то как найти ее в каталоге , и удалить ?
Убрать из кода * это?

Отправлено: 16:36, 30-08-2021 | #6


Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


Цитата VladoSer:
Убрать из кода * это? »
Да. Но если известна папка, точное имя подпапки, то зачем искать топор за лавкой? Убивайте стандартной командой:
Rd "Полное имя папки (полный путь\имя)" /S /Q
Посмотрите, может пригодится.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 30-08-2021 в 16:51.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:43, 30-08-2021 | #7


Новый участник


Сообщения: 33
Благодарности: 3

Профиль | Отправить PM | Цитировать


megaloman,
Нашел еще вот такой код , он чем то отличается от того, что предложено выше?
Код: Выделить весь код
cd /d "%LOCALAPPDATA%\Packages"
for /f "delims=" %%i in ('
"dir /ad/b/s "Microsoft.MicrosoftEdge*" 2>nul"
') do (
 rd "%%i" /s/q
 )

Отправлено: 18:40, 30-08-2021 | #8


Ветеран


Contributor


Сообщения: 2728
Благодарности: 1697

Профиль | Отправить PM | Цитировать


VladoSer, В принципе, ничем, если сделаете в командном окне
Echo "C:\Users\%USERNAME%\AppData\Local\Packages"
Echo "%LOCALAPPDATA%\Local\Packages"
и получите одинаковые строки.
Вторая строка в написании короче и универсальнее, она мне нравится больше.
Я тупо без проверки скопировал Ваш путь, так как у меня немного другие пути и я это проделать не могу.
Но мой вариант безопаснее, так как в Dir у меня используется полный путь, а в этом варианте - результат выполнения успешности CD никак не анализируется и при ошибке в указании пути Вы рискуете удалить что-то нужное, что выдаст Dir из непонятно какого места в случае некорректного завершения CD.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:55, 30-08-2021 | #9


Аватара для DJ Mogarych

fascinating rhythm


Moderator


Сообщения: 6626
Благодарности: 1528

Профиль | Отправить PM | Цитировать


Цитата VladoSer:
речь идет именно про папки Edge? »
Речь идёт о приложениях Windows, которые вы, по всей видимости, удаляете таким способом. Коллега NickM дал ссылки на правильное удаление этих приложений.

Если это просто пример какой-то отвлечённой папки, тогда другое дело.

-------
Powershell 7.x | Powershell 5.1 | ffmpeg (docs)

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:14, 30-08-2021 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Найти папку

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Найти и удалить папку. luda-chel Скриптовые языки администрирования Windows 9 17-08-2014 19:54
2008 - Не удалось найти папку c:\program Hemul39 Windows Server 2008/2008 R2 3 26-05-2013 21:49
CMD/BAT - [решено] Найти и удалить папку clayton Скриптовые языки администрирования Windows 11 22-01-2013 04:21
CMD/BAT - [решено] Найти папку и удалить содержимое sov44 Скриптовые языки администрирования Windows 7 23-12-2010 14:29
[решено] Не могу найти папку MiXalich Хочу все знать 2 01-02-2009 00:14




 
Переход