在批处理文件中使用 Echo 将 IF 语句写入文本文件

约翰·D

我正在构建一个文本文件,它实际上是 Excel 的 VBA 模块,但使用批处理文件编写。我想根据用户在选择菜单上的选择动态创建它。该模块将创建一个循环以在文件夹中的所有文件中应用宏,但宏可以根据用户输入进行更改。

我遇到的问题是我无法将以下行复制到文本文件:

 Echo If Right(folderPath, 1) <> "\" Then folderPath = folderPath + "\">>c:\users\%username%\desktop\TESTVBA.vbs

此行上方的所有其他行都写入文件,但此行和下面的所有内容都不会跟进,但我相信这与语法有关。我如何阻止它复制?还是不能复制?

jsxt

你要去的一切都echo应该逃脱。不幸的是,没有一种方法可以解决。每个%百分比符号都应该被配音,列表中的所有特殊符号<>&|都应该用^插入符号转义以下代码对您有用。请注意<>不等式运算符是如何变异的^<^>

Echo If Right(folderPath, 1) ^<^> "\" Then folderPath = folderPath + "\"

更新

我刚刚想起的另一件事。括号()可能会带来一个比较头痛的,如果他们将要echo代码块(括号内的东西可执行文件)内编。

为了消除这些问题,我建议将可打印的大量文本存储为注释并使用for /f.

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章