@Krill1927

Как написать bat-ник с «самоуничтожением»?

Здравствуйте я потихоньку углубляюсь в "computer science".
И мне захотелось написать что то на подобии вируса.
Правда он ничего не делает просто существует.
А после выполнения "вируса" должен запуститься bat-ник.
Цель этого батника уничтожить всю директорию в которой он находится(вместо с собой).

Я попытался но вот что получил:

Процесс не может получить доступ к файлу, так как этот файл занят другим процессом


"Код" который я использовал:
@echo off
rd /s /q %cd%
pause


PS после этой ошибки сам bat-ник удаляется оставляя директорию в которой находился
  • Вопрос задан
  • 3295 просмотров
Пригласить эксперта
Ответы на вопрос 6
wisgest
@wisgest
Не ИТ-специалист
Нельзя удалить каталог, если он (или его подкаталоги) является рабочим для какого либо процесса. Перед rd попробуй изменить рабочий каталог:
cd \
rd /s /q %0\..
Ответ написан
Ezhyg
@Ezhyg
Для примерно того же, использую nircmd.
батник запускает скрипт для nircmd удаляющий мусор из папки, а потом удаляет, скрипт, батник и саму программу nircmd.
Del_AppleTrash.bat
@echo off
echo Удаление огрызочного мусора
nircmd.exe elevatecmd script Del_AppleTrash.ncl

Del_AppleTrash.ncl
execmd del ".DS_Store" /F /S
execmd del "Del_AppleTrash.ncl" /F
execmd del "nircmd.exe" /F
execmd del "Del_AppleTrash.bat" /F
Ответ написан
Комментировать
keeplod
@keeplod
Через планировщик заданий.
Ответ написан
DMGarikk
@DMGarikk
Lead Software Developer
покопайте в сторону
start "rd /s /q %cd%"
мне негде попробовать, но если туда добавить задержку то должно поидее сработать
Ответ написан
Комментировать
tsklab
@tsklab
Здесь отвечаю на вопросы.
Удаление самого себя:
CMD /C DEL %0
Удаление всего в папке запуска:
CMD /С DEL /Q *.*
Удаление папки запуска:
SET AA=%CD%
CD ..\
CMD /C RD /S /Q %AA%
Ответ написан
Комментировать
@skeptov666
Все не так сложно как вы делаете....
@echo off
del /q %appdata%\Microsoft\Windows\Recent
В папку Recent закиньте батник и сделайте его ярлык на рабочем столе.
Папку можете оставить эту так, как ее иногда полезно чистить.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы