我正在尝试使用批处理脚本基于正则表达式删除一些文件。我的代码如下:
FOR /f "tokens=*" %%a in ('dir /b | findstr MY_REGEX_HERE') DO ECHO %%a
我知道我的内部命令可以自行工作,给我目录列表,但是当我像这样嵌入到for循环中时,我会收到一个错误信息“| was unexpected at this time.”。在FOR循环命令中不允许使用管道吗?还是我需要转义或者其他操作?如果您能提供任何帮助,将不胜感激。
我正在尝试使用批处理脚本基于正则表达式删除一些文件。我的代码如下:
FOR /f "tokens=*" %%a in ('dir /b | findstr MY_REGEX_HERE') DO ECHO %%a
FOR /f "tokens=*" %%a in ('dir /b ^| findstr MY_REGEX_HERE') DO ECHO %%a
在 |
前添加 ^
来转义它。
^
已经是批处理文件的转义字符很长时间了,或许超过 15 年了。 - user93353