VBS脚本和BAT批处理自身删除的方法(自杀)
删除自身之:VBS
把下面的脚本保存为selfkill.vbs或selfkill.vbe:
复制代码 代码如下:
Set fso = CreateObject("Scripting.FileSystemObject")
f = fso.DeleteFile(WScript.ScriptName)
WScript.Echo( WScript.ScriptName)
然后运行它,是不是发现selfkill.vbs神奇的消失啦?而后面的对话框却被正常显示出来噢^*^
上面的脚本调用FSO控件,使用WSH中Wscript对象得ScriptName属性,得到脚本自身的文件名,
并调用FSO的DeleteFile方法删除自身!
把它稍微改写一下:
复制代码 代码如下:
On Error Resume Next '防止出现错误
Set fso = CreateObject("Scripting.FileSystemObject")
WScript.Sleep 1000 '将脚本执行挂起1秒
fso.DeleteFile(WScript.ScriptName) '删除脚本自身<!--more-->
If fso.FileExists("c:selfkill.exe") Then fso.DeleteFile("c:selfkill.exe") '删除程序
程序就可以动态生成VBS自删除脚本,并调用它删除自身啦,方法同样和批处理文件的自删除相似!
需要说明的是由于病毒及蠕虫对脚本的滥用,脚本删除文件时可能会被被误认为恶意代码!
附:自删除js脚本:
复制代码 代码如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//删除脚本自身
fso.DeleteFile("c:selfkill.exe");//删除程序
}catch(e){}
附:自删除js脚本:
复制代码 代码如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//删除脚本自身
fso.DeleteFile("c:selfkill.exe");//删除程序
}catch(e){}
删除自身之:批处理
相关知识:
%0的具体应用小结
在批处理中,%0即代表批处理文件本身。
在批处理中,使用命令“del %0”即可达到删除自身的目的。
利用此特性,批处理经常被用来做完全卸载工具。
当然,我们还可以利用扩展,获得更多的用途:
1.利用“%~dp0”可以得到该文件的路径;
复制代码 代码如下:
@echo off
echo %~dp0
2.利用“%~nx0”可以得到文件名;
复制代码 代码如下:
@echo off
echo %~nx0
如我C盘有个文件夹名为 AAA 里面有很多文件
我想把 g:AAA 这个文件夹里的文件和文件夹全删除该怎么写批处理啊!
rd /s /q C:AAA
上面一行代码恰好能解决问题!(也删掉了AAA这个文件夹)详见解释:
删除一个目录。
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S 除目录本身外,还将删除指定目录下的所有子目录和
文件。用于删除目录树。
/Q 安静模式,带 /S 删除目录树时不要求确认
参考资料:rd/?
@echo off
echo %~nx0
这个最好把引号加上,不然名字中间有空格就杀不成了
我杀 "复件 123.bat"
@echo off
del "%~nx0"
删除自身之:VBS
把下面的脚本保存为selfkill.vbs或selfkill.vbe:
复制代码 代码如下:
Set fso = CreateObject("Scripting.FileSystemObject")
f = fso.DeleteFile(WScript.ScriptName)
WScript.Echo( WScript.ScriptName)
然后运行它,是不是发现selfkill.vbs神奇的消失啦?而后面的对话框却被正常显示出来噢^*^
上面的脚本调用FSO控件,使用WSH中Wscript对象得ScriptName属性,得到脚本自身的文件名,
并调用FSO的DeleteFile方法删除自身!
把它稍微改写一下:
复制代码 代码如下:
On Error Resume Next '防止出现错误
Set fso = CreateObject("Scripting.FileSystemObject")
WScript.Sleep 1000 '将脚本执行挂起1秒
fso.DeleteFile(WScript.ScriptName) '删除脚本自身<!--more-->
If fso.FileExists("c:selfkill.exe") Then fso.DeleteFile("c:selfkill.exe") '删除程序
程序就可以动态生成VBS自删除脚本,并调用它删除自身啦,方法同样和批处理文件的自删除相似!
需要说明的是由于病毒及蠕虫对脚本的滥用,脚本删除文件时可能会被被误认为恶意代码!
附:自删除js脚本:
复制代码 代码如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//删除脚本自身
fso.DeleteFile("c:selfkill.exe");//删除程序
}catch(e){}
附:自删除js脚本:
复制代码 代码如下:
try{fso = new ActiveXObject("Scripting.FileSystemObject");
WScript.Sleep(1000);//休眠1秒
fso.DeleteFile(WScript.ScriptName);//删除脚本自身
fso.DeleteFile("c:selfkill.exe");//删除程序
}catch(e){}
删除自身之:批处理
相关知识:
%0的具体应用小结
在批处理中,%0即代表批处理文件本身。
在批处理中,使用命令“del %0”即可达到删除自身的目的。
利用此特性,批处理经常被用来做完全卸载工具。
当然,我们还可以利用扩展,获得更多的用途:
1.利用“%~dp0”可以得到该文件的路径;
复制代码 代码如下:
@echo off
echo %~dp0
2.利用“%~nx0”可以得到文件名;
复制代码 代码如下:
@echo off
echo %~nx0
如我C盘有个文件夹名为 AAA 里面有很多文件
我想把 g:AAA 这个文件夹里的文件和文件夹全删除该怎么写批处理啊!
rd /s /q C:AAA
上面一行代码恰好能解决问题!(也删掉了AAA这个文件夹)详见解释:
删除一个目录。
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S 除目录本身外,还将删除指定目录下的所有子目录和
文件。用于删除目录树。
/Q 安静模式,带 /S 删除目录树时不要求确认
参考资料:rd/?
@echo off
echo %~nx0
这个最好把引号加上,不然名字中间有空格就杀不成了
我杀 "复件 123.bat"
@echo off
del "%~nx0"
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年12月23日
2024年12月23日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]