|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Скрипт для удаления файлов и папок |
|
VBS/WSH/JS - [решено] Скрипт для удаления файлов и папок
|
Старожил Сообщения: 176 |
Собрал из кусков скрипт для удаления файлов и папок.
Но проблема такая, если все указанные в скрипте файлы присутствуют в системе то он отрабатывает нормально. А если какого нибудь файла или папки нет, то скрипт выдаёт ошибку: файл не найден и окно висит пока не закроешь вручную. Помогите подправить или написать новый, чтобы не было такой ошибки. Вот мой скрипт: Скрытый текст
' Задержка 1 секунда
WScript.Sleep 1*1000 ' Удаление файла WScript.CreateObject("Scripting.FileSystemObject").DeleteFile "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe", True WScript.CreateObject("Scripting.FileSystemObject").DeleteFile "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe", True ' Задержка 1 секунда WScript.Sleep 1*1000 ' Удаление папки WScript.CreateObject("Scripting.FileSystemObject").DeleteFolder "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer", True А если поможете написать скрипт или .cmd, чтобы сперва отработал инсталлятор браузера setup.exe, затем ещё один .exe (он просто заменяет файлы в папке с настройками) и затем удалились бы нужные папки и файлы, то я бы был безмерно вам благодарен. |
|
Отправлено: 18:22, 03-02-2018 |
Старожил Сообщения: 176
|
Профиль | Отправить PM | Цитировать Казбек,
Если запускать из папки TEMP (переменная окружения), то срабатывает. Но дело в том, что при распаковке моего инсталлятора SFX, запуск происходит не из самой папки TEMP, а из C:\Users\Администратор ПК\AppData\Local\Temp\RarSFX0 и эта папка RarSFX0 всегда имеет разное имя, то RarSFX0, то RarSFX1. И поэтому сценарий не срабатывает: Невозможно найти файлы Setup.exe и Settings.exe. Скрытый текст
Pushd "%Temp%"
start " " /wait Setup.exe Popd ping -n 3 localhost>Nul Pushd "%Temp%" start " " /wait Settings.exe Popd del /f /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe" "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe" rd /s /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer" |
Отправлено: 21:17, 03-02-2018 | #11 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ушел из жизни Сообщения: 8595
|
Профиль | Сайт | Отправить PM | Цитировать Цитата BKPB:
|
|
------- Отправлено: 21:27, 03-02-2018 | #12 |
Ветеран Сообщения: 5380
|
Профиль | Отправить PM | Цитировать BKPB,
Расскажите нам на словах, что вы хотите сделать. Без кода. И конечную цель этих действий. Цитата BKPB:
На том скрине, что вы предоставили выше, вы выполнили: Вместо моего варианта: |
|
------- Отправлено: 21:41, 03-02-2018 | #13 |
Старожил Сообщения: 176
|
Профиль | Отправить PM | Цитировать mwz,
Спасибо, так срабатывает, но теперь не удаляются папки: Скрытый текст
Pushd "%Temp%"
start " " /wait "%~dp0Setup.exe" Popd Pushd "%Temp%" start " " /wait "%~dp0Settings.exe" Popd del /f /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe" "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe" rd /s /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer" |
Отправлено: 21:49, 03-02-2018 | #14 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать |
------- Последний раз редактировалось megaloman, 03-02-2018 в 22:02. Отправлено: 21:53, 03-02-2018 | #15 |
Старожил Сообщения: 176
|
Профиль | Отправить PM | Цитировать =кк
|
Последний раз редактировалось BKPB, 03-02-2018 в 22:08. Отправлено: 22:01, 03-02-2018 | #16 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата BKPB:
Цитата BKPB:
Цитата BKPB:
|
|||
------- Последний раз редактировалось megaloman, 03-02-2018 в 22:25. Отправлено: 22:04, 03-02-2018 | #17 |
Старожил Сообщения: 176
|
Профиль | Отправить PM | Цитировать Я хочу создать инсталлятор Яндекс браузера без голосового помощника Алиса и с моими готовыми настройками, а также удалить не нужную после установки папку Installer и файлы yupdate-exec.exe и service_update.exe отвечающие за автоматическое обновление браузера.
У меня есть 3 файла: browser.7z, Setup.exe, Settings.exe. Которые я запаковываю в SFX WinRar. Setup.exe - исполняемый файл (оригинальный - установка браузера) Settings.exe - самораспаковывающиеся архив в котором находится папка Default c готовыми настройками браузера (после установки браузера она заменяет папку по умолчанию Default (C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\User Data\Default). Мне нужно, чтобы файлы распаковались в папку %TEMP% и запустилась установка, а по окончании установки браузера, пака с настройками заменила такую же папку по умолчанию и удалились ненужные файлы service_update.exe service_update.exe и ненужная после установки папка Installer. Вот мой файл .cmd: Скрытый текст
Pushd "%Temp%"
start " " /wait "%~dp0Setup.exe" start " " /wait "%~dp0Settings.exe" Popd ping -n 6 localhost>Nul del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe" del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe" rd /s /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer" Установка проходит нормально, но файлы service_update.exe service_update.exe и ненужная после установки папка Installer не удаляются. Часть причины, я так думаю из за того что происходит запуск браузера после отработки инсталлятора, хотя даже после того как я его закрою и запущу Скрытый текст
del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe"
del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe" rd /s /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer" Файлы и папка всё равно остаются на месте. |
Отправлено: 22:38, 03-02-2018 | #18 |
Старожил Сообщения: 176
|
Профиль | Отправить PM | Цитировать megaloman,
Вот батник который работает из папки (RarSFX0 или RarSFX1 - всегда разные) создаваемой SFX WinRar инсталлятором в папке ТЕМР С:\Users\Администратор ПК\AppData\Local\Temp\RarSFX* за исключением, что не удаляются файлы и папка Скрытый текст
Pushd "%Temp%"
start " " /wait "%~dp0Setup.exe" start " " /wait "%~dp0Settings.exe" Popd ping -n 6 localhost>Nul del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe" del "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe" rd /s /q "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer" Вы говорите, что они не удаляются из за руских букв в пути, но до этого они именно по этим путям и удалялись. Просто я мучаюсь уже 5 часов и голова уже ватная, поэтому не пойму почему раньше в других батниках они удалялись а сейчас нет. megaloman, Если вы считаете, что так лучше сделаю так, Скрытый текст
Pushd "%~dp0"
start " " /wait "Setup.exe" start " " /wait "Settings.exe" Popd Просто я в этом ничего не понимаю поэтому и поросил помочь. Если делать удаление через скрипт, во так: Скрытый текст
' Задержка 1 секунда
WScript.Sleep 1*1000 ' Удаление файла WScript.CreateObject("Scripting.FileSystemObject").DeleteFile "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe", True WScript.CreateObject("Scripting.FileSystemObject").DeleteFile "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe", True ' Задержка 1 секунда WScript.Sleep 1*1000 ' Удаление папки WScript.CreateObject("Scripting.FileSystemObject").DeleteFolder "C:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer", True тогда все удаления отрабатывают отлично. |
Отправлено: 23:04, 03-02-2018 | #19 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
В файле забыл убрать FOR /D %%d IN ("%BoxIn%") DO If Exist "%%d\Setup.exe" (Pushd "%%d" & Или, как вариант, если, например, Вы батник сохраняете блокнотом (1251 кодировка)
@Echo Off
chcp 1251 >nul
Set "BoxIn=Z:\Users\Администратор ПК\AppData\Local\Temp\RarSFX*"
FOR /D %%d IN ("%BoxIn%") DO If Exist "%%d\Setup.exe" (Pushd "%%d" &Start " " /wait "Setup.exe")
FOR /D %%d IN ("%BoxIn%") DO If Exist "%%d\Settings.exe" (Pushd "%%d" &Start " " /wait "Settings.exe")
Del /F /Q "Z:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\service_update.exe"
Del /F /Q "Z:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\yupdate-exec.exe"
Rd /S /Q "Z:\Users\Администратор ПК\AppData\Local\Yandex\YandexBrowser\Application\17.11.1.990\Installer"
|
|
------- Последний раз редактировалось megaloman, 03-02-2018 в 23:58. Отправлено: 23:38, 03-02-2018 | #20 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - [решено] Скрипт для удаления старых файлов и папок из определенной папки | avfiga | Скриптовые языки администрирования Windows | 71 | 07-01-2023 18:50 | |
VBS/WSH/JS - Скрипт для забора файлов и папок (с сохр. структуры) из неск. сетевых папок в одну л. | DjBoBo | Скриптовые языки администрирования Windows | 0 | 19-07-2016 16:30 | |
VBS/WSH/JS - Скрипт удаления папок/подпапок и файлов | zhuk09 | Скриптовые языки администрирования Windows | 4 | 07-12-2015 12:41 | |
CMD/BAT - [решено] Как переделать скрипт удаления папок, на скрипт удаления файлов | ufooo | Скриптовые языки администрирования Windows | 2 | 02-06-2015 12:22 | |
CMD/BAT - Скрипт поиска и удаления файлов и папок с длиной пути больше 256 символов | Alex007 | Скриптовые языки администрирования Windows | 2 | 01-12-2014 18:44 |
|