我正在Windows中编写一个脚本,一个.BAT文件,以替换:< abc>到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>
答案 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)
重定向器等特殊字符需要使用插入符号进行转义:^<
%
需要%
转义:%%
&
在一行上分隔命令。