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

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

Ответить
Настройки темы
CMD/BAT - [решено] Удаление Opera из неизвестного текущего профиля

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


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

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


Добрый день.
На ПК установлена Opera, не известно из какого профиля.
Подскажите пожалуйста как перебрать все профили, чтобы отработал скрипт удаления в том профиле из какого был установлен браузер? на примере IvanovII. Командная строка удаления выглядит так:
C:\Users\IvanovII\AppData\Local\Programs\Opera\Launcher.exe" /uninstall /silent

Написал CMD:
: Удаление процесса Opera

taskkill /F /IM opera.exe

cd "C:\Users\"

for /f %%d in ('dir /B *') do (
set Profile=%%d
)

%Profile%\AppData\Local\Programs\Opera\Launcher.exe /uninstall /silent


Происходит следующее выполнение:

C:\Windows\System32>cd "C:\Users\"

C:\Users>for /F %d in ('dir /B *') do (set Profile=%d )

C:\Users>(set Profile=auditor )

C:\Users>(set Profile=gendir )

C:\Users>(set Profile=IvanovII )

C:\Users>(set Profile=Public )

C:\Users>(set Profile=User )

C:\Users>User\AppData\Local\Programs\Opera\Launcher.exe /uninstall /silent
Системе не удается найти указанный путь.

C:\Users>pause
Для продолжения нажмите любую клавишу . . .

Где допущена ошибка?

Отправлено: 18:05, 05-12-2022

 

Аватара для NickM

Ветеран


Contributor


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

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


Если Вам требуется просто сформировать строку удаления, то можно попробовать вот таким способом:
Код: Выделить весь код
@echo off
SetLocal EnableExtensions

For /F "Tokens=2*" %%I In ('Reg Query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /V ProfilesDirectory') Do Set Profiles=%%J
Call Set Profiles=%Profiles%

For /F "Delims=" %%I In ('Dir /B /AD-S-H "%Profiles%" ^| FindStr /V /B /I /C:"All Users" /C:"Public"') Do (
  echo."%Profiles%\%%I\AppData\Local\Programs\Opera\Launcher.exe" /uninstall /silent
)
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:26, 05-12-2022 | #2



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

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


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


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

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


А возможно, чтобы скрипт перебрал все пути, ну и там, где присутствует Launcher.exe, подставился путь и произошло удаление?

Отправлено: 18:40, 05-12-2022 | #3


Аватара для NickM

Ветеран


Contributor


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

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


Можете добавить проверку:
Код: Выделить весь код
IF EXIST
Только Вам следует понимать, что анинсталлер отработает от того пользователя, от которого будет запущён сценарий, и это будет не одно и то же, как запустить его от того пользователя, у которого установлено приложение.

Отправлено: 19:01, 05-12-2022 | #4


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

fascinating rhythm


Moderator


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

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


Powershell v5:
Код: Выделить весь код
#Requires -RunAsAdministrator

dir (get-item $env:USERPROFILE).Parent.FullName -directory |% {
    if (test-path ($p = $_.FullName + "\AppData\Local\Programs\Opera\Launcher.exe")) {
        & $p /uninstall /silent
    }
}

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

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

Отправлено: 21:09, 05-12-2022 | #5


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


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

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


Спасибо большое.
А это реализуемо через cmd?

Подскажите еще пожалуйста, как скопировать папку в %appdata% во все профили, за исключением системных?

Отправлено: 08:40, 06-12-2022 | #6


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

fascinating rhythm


Moderator


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

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


Наверняка реализуемо, но зачем?
Если у вас есть домен, всеми этими задачами лучше заниматься через групповые политики.

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


Отправлено: 08:43, 06-12-2022 | #7


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


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

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


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

Последний раз редактировалось Garold, 06-12-2022 в 09:03.


Отправлено: 08:51, 06-12-2022 | #8


Аватара для NickM

Ветеран


Contributor


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

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


Цитата Garold:
А это реализуемо через cmd? »
Смотрим код для сценария выше;

Цитата Garold:
как скопировать папку в %appdata% во все профили, за исключением системных? »
Смотрим код для сценария выше;

Или Вам нужно вот прямо готовое решение?
Где нажал и всё чики-чики?

Отправлено: 10:00, 06-12-2022 | #9


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


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

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


Ребята, большое спасибо за помощь!
С копированием разобрался.

for /f "delims=" %%a in ('dir/b/ad-h "%userprofile%\..\*"^|findstr/ixvc:"All Users"') do (
xcopy /q/s/y/r/h "\\share\TEST\*" "%userprofile%\..\%%a\AppData\Roaming\TEST\"
)



Помогите пожалуйста, не могу разобраться, где допустил ошибку:

for /f "delims=" %%a in ('dir/b/ad-h "%userprofile%\..\*"^|findstr/ixvc:"All Users"') do (
"%~dp0Settings\RAR.exe" x -u -y "%~dp0Settings\Skript.rar" "%userprofile%\..\%%a\AppData\Roaming\Local\"
)

Все это дело распаковывается:
В профиль, из которого запущен батник:

c:\users\IvanovII\auditor
c:\users\IvanovII\gendir
c:\users\IvanovII\Public
c:\users\IvanovII\User
c:\users\IvanovII\IvanovII

И как еще исключить Public?

Отправлено: 10:42, 06-12-2022 | #10



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Драйвер - Удаление неизвестного устройства в диспетчере устройств Win 7 x64 dre@mer Microsoft Windows 7 13 18-01-2018 01:11
2008 R2 - Ad Настроить удаление файлов из профиля. Egor.net Windows Server 2008/2008 R2 2 14-01-2014 12:47
Загрузка - Shutdown прерывается из-за неизвестного приложения ElectricHumanBeing Microsoft Windows 8 и 8.1 5 26-08-2013 14:18
CMD/BAT - Копирование файлов из неизвестного источника _sakura_ Скриптовые языки администрирования Windows 0 31-10-2011 18:27
Ограничения на размер профиля+исключение папок из профиля Grug Microsoft Windows NT/2000/2003 2 04-03-2009 11:09




 
Переход