错误:“|”这次批处理脚本出乎意料

时间:2013-12-30 14:35:49

标签: batch-file

当我运行此脚本时,我会收到

  

|这时出人意料。

这是代码:

@ECHO Off

REM Mapeo de unidad U, path de usuario

    net use u: \\server\usuarios\%username%
pause
REM  ***** Description group ****

for /f %%i in ('net user %username% /domain | find /i /c Group') do set RESULT=%%i

echo %RESULT%

pause   

for句中,i使用"',但我仍然遇到错误。

2 个答案:

答案 0 :(得分:23)

批处理解析器必须解析for内的条件才能将其作为可执行命令传递给IN()子句,并且因为管道是DOS中的特殊字符,所以需要使用转义符管道之前的字符(^)在初始批处理解析期间保留它,如下所示:

for /f %%i in ('net user %username% /domain ^| find /i /c Group') do set RESULT=%%i

答案 1 :(得分:6)

您需要在for命令中查看管道char。它应该是^|

相关问题