中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [原创]发一个我的原创批处理——KILL命令
作者:
标题: [原创]发一个我的原创批处理——KILL命令 上一主题 | 下一主题
tt518
初级用户





积分 44
发帖 18
注册 2008-3-30
状态 离线
『楼 主』:  [原创]发一个我的原创批处理——KILL命令

P.S.:我想可以参照这个http://www.cn-dos.net/forum/viewthread.php?tid=41069&page=1#pid284317修改下——tt518 at 11:47

保存为kill.bat
kill可删除con等特殊文件夹
kill /d删除目录
kill /f删除文件
都需要跟上绝对路径

本人菜鸟一个,如有不足,尽请谅解。
@echo off
if "%1"=="" goto help
if "%1"=="/?" goto help
if "%1"=="-?" goto help
if /I "%1"=="-help" goto help
if /I "%1"=="/help" goto help
if /I "%1"=="-h" goto help
if /I "%1"=="/h" goto help
if /I "%1"=="/d" goto killdir
if /I "%1"=="/f" goto killfile
echo 参数无效。
goto help

:killdir
if /I "%3"=="/s" goto killdir_s
rd "\\?\%2"
goto :eof

:killdir_s
rd /s "\\?\%2"
goto :eof

:killfile
if /I "%3"=="/s" goto killfile_s
del "\\?\%2"
goto :eof

:killdir_s
del /s "\\?\%2"
goto :eof

:help
echo 删除一个目录或一个文件。
echo.
echo KILL [/?] [/d ^| /f] [drive:]path [/s]
echo.
echo. /d            删除目录。
echo. /f            删除文件。
echo  [drive:]path  指定要删除的对象。必须采用绝对路径。
echo. /s            强制删除。
echo. /?            显示此画面。
echo.
goto :eof
[ Last edited by tt518 on 2008-6-20 at 12:04 PM ]

   此帖被 +2 点积分     点击查看详情   
评分人:【 pusofalse 分数: +2  时间:2008-6-20 22:29


2008-6-20 12:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tt518
初级用户





积分 44
发帖 18
注册 2008-3-30
状态 离线
『第 2 楼』:  

Why? 不好吗?

2008-6-20 22:04
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 3 楼』:  

很好。。。不过仍然可以简化~



心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-20 22:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bat-zw
金牌会员

永远的学习者


积分 3105
发帖 1276
注册 2008-3-8
状态 离线
『第 4 楼』:  仅是对部分代码进行简化:

原代码:
if "%1"=="/?" goto help
if "%1"=="-?" goto help
if /I "%1"=="-help" goto help
if /I "%1"=="/help" goto help
if /I "%1"=="-h" goto help
if /I "%1"=="/h" goto help
简化:
for %%a in (- /) do (
     for %%i in (? help h) do (
          if /i "%1" equ "%%a%%i" goto help
     )
)
[ Last edited by zw19750516 on 2008-6-21 at 01:45 PM ]



批处理之家新域名:www.bathome.net
2008-6-21 13:42
查看资料  发送邮件  发短消息 网志  OICQ (841615149)  编辑帖子  回复  引用回复
tt518
初级用户





积分 44
发帖 18
注册 2008-3-30
状态 离线
『第 5 楼』:  

聪明,谢谢您!

2008-6-26 19:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: