[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
除了命令允许不加引号,比如cd、notepad等;或者引号在命令中有特殊含义,比如start的第一对引号视为标题,for /f将引号中的内容视为字符串而不是文件名。一般情况下都应该加引号才不会造成错误,不管有没有空格。

Windows上一般都使用双引号,因为单引号在Windows上只是普通字符,没有特殊含义,只在少数命令支持时才有特殊性。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

回复 7楼 的帖子

楼主“见过的不少批处理都是区别对待的”,能否举出几例?
我想很大可能是那些批处理作者水平不到位(没任何轻视的意思,只是猜测)
比如对%1的推荐用法是"%~1",这样就不用区分参数%1是否含有引号。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

说了无数遍了,这个“古老的一键清理垃圾”本身就是个垃圾。
蓝色部分本来就是错的!
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

回复 12楼 的帖子

引号有转义作用,显然应该加在空格前面,否则空格还是作为命令与参数的分隔符。
windows下的引号不能转义回车,到行末时不管有没有配对的引号,都认为语句结束。如果在Linux下就不行。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

回复 19楼 的帖子

除了蓝色部分是错的,还有其他根本不合理的地方:
http://www.bathome.net/viewthread.php?tid=684#pid7625
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

早就说过,蓝色部分是错的,不只是没加引号这么简单,而是这个“没加引号”错误可能造成灾难性后果。
del命令支持多个参数,即可以同时删除多个文件。文件名之间用分隔符(如空格、分号等)分开,这里文件名也可以是文件夹名,相当于删除文件夹下的所有文件(folder\*.*)
一般%userprofile%是C:\Documents and Settings\用户名
del /f /q %userprofile%\recent\*.* 就是
del /f /q C:\Documents and Settings\用户名\recent\*.*
即不提示用户就删除这3处:
C:\Documents文件夹下的所有文件,当前目录下and文件夹中的所有文件,及当前目录下Settings\用户名\recent\*.*
如果真的存在C:\Documents文件夹(documents这个名字很常用哦,所以可能性不少),其下又保存了很重要的文档,一旦运行那个del命令可就追悔莫及。
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

返回列表