1
当我使用批处理文件创建文件invisible.vbs
,然后删除时,它会停止并出现错误。基本上,我想要做的是让批处理文件创建此文件。动态创建invisible.vbs时出错?
这是我的错误,当我运行该批处理文件:
C:\Users\HP\Desktop>"New Text Document.bat"
CreateObject("Wscript.Shell").Run """"
'WScript.Arguments' is not recognized as an internal or external command, operable program or batch file.
'""""' is not recognized as an internal or external command, operable program or batch file.
这是何等的批处理文件:
@ECHO OFF
CD /D %~dp0
ECHO\ CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0,False>>Invisible.vbs
::What I want to do with the file is here
DEL %CD%\invisible.vbs /Q /S
我会注意到生成的文件,但它是空的,因此当我尝试使用它来使另一个批处理文件不可见时什么也不做。
好的,这是有效的,但现在它说:'.Run在这个时候是意外的'。现在怎么办? –
@JeffreyLin当你看到一个消息,说'blah'在这个时候是意外的,只要看看'blah'之前的那个角色,你就会找到原因。在批处理中,括号'()'是特殊字符,当它们被直接使用而不包含在引用内时,它们本身应该被转义'^(^)'。对不起,我错过了。更新了答案。谢天谢地,这种类型的错误在将echo输出重定向到文件时不会导致执行问题。它只是烦人。 –
@JeffreyLin在批处理中,括号'()'是(指定范围)的特殊字符请注意,有许多**烦人**批处理和字面上使用特殊字符。批处理特殊字符包括'%&()^〜<>'并注意一些特殊字符在跟随另一个特殊字符时做了不同的事情。 –