[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 求助批处理重定向文本遇到双冒号时提示系统找不到指定的驱动器?

做一个输入法精简和重排序的小批,本来有一串字符重定义到文件中,结果由于中间有了::E0040804,出现了“系统找不到指定的驱动器。”的提示,我哪里去找驱动器了?

(
::E0040804
::E0010804
echo 这是几个字符串
)>abc.txt
pause


或者是:
(
::6
::0
echo 这是几个字符串
)>abc.txt
pause

难道是解释器倒行逆施解释出了e:、6:之类的指令?

[ 本帖最后由 9zhmke 于 2009-3-24 12:15 编辑 ]

复合语句中的注释尽量不要用“::”(与放的位置有关)。上面的括号其实就是一种复合语句。

其实::本来是一种错误的标签(还有多种),命令解释器一般不会理会它,所以它可以当作注释字符,而实际上它相当于冗余的垃圾信息,有时候可能会产生无法预料的错误。

请记住rem才是正式的注释命令,应该尽量使用rem而不要用其他方式(比如还有%undefined%)。

[ 本帖最后由 zqz0012005 于 2009-3-24 12:35 编辑 ]
命令行参考:hh.exe ntcmds.chm::/ntcmds.htm
求助者请拿出诚心,别人才愿意奉献热心!
把查看手册形成条件反射!

TOP

解释器只是做了你告诉的一些事情,何来倒行逆施之谈?
  1. explorer ::{D6277990-4C6A-11CF-8D87-00AA0060F5BF}
复制代码
  1. explorer ::{20D04FE0-3AEA-1069-A2D8-08002B30309D}
复制代码
  1. (
  2. :: E0040804
  3. :: E0010804
  4. echo 这是几个字符串
  5. )>abc.txt
  6. pause
复制代码
  1. (
  2. rem E0040804
  3. rem E0010804
  4. echo 这是几个字符串
  5. )>abc.txt
  6. pause
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

谢谢版主指点,Batcher的意思就是说::可被用于解释成为一些设备名吧,但具体是怎么出的问题还是没有清楚。

TOP

返回列表