特殊字符<abc>,角括号替换.BAT文件

时间:2016-03-09 12:40:54

标签: batch-file

我正在Windows中编写一个脚本,一个.BAT文件,以替换:&lt; abc&gt;到abc。 但是我遇到了Angular括号字符的问题。

这是脚本的样子:

SET STRING=<ABCDEFG>
SET STRING=%STRING:<=%
SET STRING=%STRING:>=%
ECHO String: %STRING%

但只收到错误消息:The syntax of the command is incorrect.

 D:\BACKUP>SET STRING=<ABCDEFG> 

2 个答案:

答案 0 :(得分:2)

像Magoo所说,特殊角色需要逃脱 您可以使用插入符号,但也可以使用引号

SET "STRING=<ABCDEFG>"
SET "STRING=%STRING:<=%"
SET "STRING=%STRING:>=%"
ECHO String: "%STRING%"

或者更好地使用延迟扩展而不是扩展百分比,因为延迟扩展可以处理任何内容。

SET "STRING=<ABCDEFG>"
SET "STRING=!STRING:<=!"
SET "STRING=!STRING:>=!"
ECHO String: !STRING!

答案 1 :(得分:0)

重定向器等特殊字符需要使用插入符号进行转义:^<

%需要%转义:%%

&在一行上分隔命令。