我的批处理文件中有一个变量,它包含管道符号(这一个:|)所以当我回显变量时,我得到一个关于无法识别的内部/外部命令的错误.
我需要一种方法来让它正确地回应它或更好地删除包括|之后的所有内容 符号以及它之前的任何额外空格.
bob*_*mcr 41
在Windows批处理文件中使用时,通常必须转义几个特殊字符.以下是部分列表:< > & | ^ %
转义字符是^.所以要获得文字|,你应该这样做:
echo ^|
Run Code Online (Sandbox Code Playgroud)
当特殊字符在变量中时,它变得有点困难.但是如果使用特殊语法,则可以替换变量中的字符,如下所示:
set X=A^|B
REM replace pipe character with underscore
set Y=%X:|=_%
echo %Y%
REM prints "A_B"
Run Code Online (Sandbox Code Playgroud)
您必须转义| 字符,然后再打印var。以下打印a | b
@echo off
set x=a^|b
echo %x:|=^|%
Run Code Online (Sandbox Code Playgroud)