我想看看我如何使用,或者像在Unix shell中那样在windows批处理的后引用中转义管道。假设我有这个:
FOR /F "usebackq delims=" %i IN (`date /t`) DO @set TODAY=%i
echo %TODAY%
这将在TODAY变量中给出日期。但我想让这个或多个管道工作:
FOR /F "usebackq delims=" %i IN (`date /t | cut -c 1-3`) DO @set TODAY=%i
cmd.exe抱怨错误,我认为我需要一个逃生机制?</ p>
| was unexpected at this time.
那么,这可行吗?怎么样?请注意我在PATH中有完整的gnu coreutils和大多数好东西,所以我可以使用cut作为例子。
答案 0 :(得分:5)
转义字符为^
。
这是命令,最后用set
替换echo
以使其更友好。
FOR /F "usebackq delims=" %i IN (`date /t ^| cut -c 1-3`) DO @echo TODAY=%i
TODAY=18/
(YMMV,我有一个日期的法语区域设置)
date /t
18/02/2013