帮帮忙解释一下这个bat的意思,为什么能这样用.在一个bat中输入如下代码:DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1 保存后,将要删除的文件拖到这个图标上面,就能删除那个文件或者是文件夹了,但是这是

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/28 08:03:29
帮帮忙解释一下这个bat的意思,为什么能这样用.在一个bat中输入如下代码:DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1 保存后,将要删除的文件拖到这个图标上面,就能删除那个文件或者是文件夹了,但是这是

帮帮忙解释一下这个bat的意思,为什么能这样用.在一个bat中输入如下代码:DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1 保存后,将要删除的文件拖到这个图标上面,就能删除那个文件或者是文件夹了,但是这是
帮帮忙解释一下这个bat的意思,为什么能这样用.
在一个bat中输入如下代码:
DEL /F /A /Q \\?\%1
RD /S /Q \\?\%1
保存后,将要删除的文件拖到这个图标上面,就能删除那个文件或者是文件夹了,但是这是为什么,我不懂耶,对于这种%1的我不知道是为什么.
而且为什么是 \\?\%1
随便介绍一下%1的用法,我记得以前看过,但是不记得了.
关于%0 %1 %2 ..等等这些,关于\\?\%1 的用法好像没有说清楚耶,
还有,我记得%1除了用这种拖的方式还有很多办法可以使用,到底是什么?

帮帮忙解释一下这个bat的意思,为什么能这样用.在一个bat中输入如下代码:DEL /F /A /Q \\?\%1 RD /S /Q \\?\%1 保存后,将要删除的文件拖到这个图标上面,就能删除那个文件或者是文件夹了,但是这是
%1是个参数,他代表的是托拖到批处理文件上面的第一个参数.
在使用的过程中可以使用%1代替需要用到参数的地方,
例子:将下面两行保存为批处理文件,托个文件上去看看反应
@echo off
echo %1
pause
\\?\%1
是用来删除特殊的文件夹,默认的情况下不能直接删除名字为AUX,COM1,COM2,PRN,CON,NUL等等的文件夹(这下文件夹普通方式也没法建立,用msdos可以建立),用这种方式可以,具体请参考下面链接.
借用别人说的:
@echo off
format %1
如果执行C:\>f a:
那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:
例2:C:根目录下一批处理文件名为t.bat,内容为:
@echo off
type %1
type %2
那么运行C:\>t a.txt b.txt
%1 :表示a.txt
%2 :表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容.
综上所述:也就是说%1-%9分别他代表的是参数.
\\?\%1是删除“设备”的方法,那片文章中“\\.\文件名”,”换成了“.”也就是计算机名称问好的作用与点号作用一样.%1计时文件名,所以会删除文件.