VBS腳本和BAT批處理自身刪除的方法(自殺)
刪除自身之:VBS
把下面的腳本保存為selfkill.vbs或selfkill.vbe:
復(fù)制代碼 代碼如下:
Set fso = CreateObject("Scripting.FileSystemObject")
f = fso.DeleteFile(WScript.ScriptName)
WScript.Echo( WScript.ScriptName)
然后運(yùn)行它,是不是發(fā)現(xiàn)selfkill.vbs神奇的消失啦?而后面的對話框卻被正常顯示出來噢^*^
上面的腳本調(diào)用FSO控件,使用WSH中Wscript對象得ScriptName屬性,得到腳本自身的文件名,
并調(diào)用FSO的DeleteFile方法刪除自身!
把它稍微改寫一下:
復(fù)制代碼 代碼如下:
On Error Resume Next '防止出現(xiàn)錯(cuò)誤
Set fso = CreateObject("Scripting.FileSystemObject")
WScript.Sleep 1000 '將腳本執(zhí)行掛起1秒
fso.DeleteFile(WScript.ScriptName) '刪除腳本自身!--more-->
If fso.FileExists("c:selfkill.exe") Then fso.DeleteFile("c:selfkill.exe") '刪除程序
程序就可以動(dòng)態(tài)生成VBS自刪除腳本,并調(diào)用它刪除自身啦,方法同樣和批處理文件的自刪除相似!
需要說明的是由于病毒及蠕蟲對腳本的濫用,腳本刪除文件時(shí)可能會(huì)被被誤認(rèn)為惡意代碼!
附:自刪除js腳本:
復(fù)制代碼 代碼如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//刪除腳本自身
fso.DeleteFile("c:selfkill.exe");//刪除程序
}catch(e){}
附:自刪除js腳本:
復(fù)制代碼 代碼如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//刪除腳本自身
fso.DeleteFile("c:selfkill.exe");//刪除程序
}catch(e){}
刪除自身之:批處理
相關(guān)知識:
%0的具體應(yīng)用小結(jié)
在批處理中,%0即代表批處理文件本身。
在批處理中,使用命令“del %0”即可達(dá)到刪除自身的目的。
利用此特性,批處理經(jīng)常被用來做完全卸載工具。
當(dāng)然,我們還可以利用擴(kuò)展,獲得更多的用途:
1.利用“%~dp0”可以得到該文件的路徑;
復(fù)制代碼 代碼如下:
@echo off
echo %~dp0
2.利用“%~nx0”可以得到文件名;
復(fù)制代碼 代碼如下:
@echo off
echo %~nx0
如我C盤有個(gè)文件夾名為 AAA 里面有很多文件
我想把 g:AAA 這個(gè)文件夾里的文件和文件夾全刪除該怎么寫批處理啊!
rd /s /q C:AAA
上面一行代碼恰好能解決問題!(也刪掉了AAA這個(gè)文件夾)詳見解釋:
刪除一個(gè)目錄。
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S 除目錄本身外,還將刪除指定目錄下的所有子目錄和
文件。用于刪除目錄樹。
/Q 安靜模式,帶 /S 刪除目錄樹時(shí)不要求確認(rèn)
參考資料:rd/?
@echo off
echo %~nx0
這個(gè)最好把引號加上,不然名字中間有空格就殺不成了
我殺 "復(fù)件 123.bat"
@echo off
del "%~nx0"
您可能感興趣的文章:- 可以將Bat轉(zhuǎn)換位VBS文件的VBS腳本
- 用VBS來代替BAT或CMD文件進(jìn)行命令
- vbs后臺運(yùn)行bat刪除自身的代碼
- 進(jìn)程監(jiān)控實(shí)現(xiàn)代碼[vbs+bat]
- vbs 批量修改文件,bat 批處理文件調(diào)用執(zhí)行vbs,并在cmd窗口打印返回值(vbs運(yùn)行結(jié)果)
- EXE2BAT(EXE轉(zhuǎn)BAT)的vbs腳本
- VBS和bat批處理逐行讀取文件實(shí)例
- BAT批處理、VBScript批量安裝字體腳本分享
- vbs與bat混編修改虛擬盤符的卷標(biāo)