在win批处理命令中转义空格字符



我有这个:

FOR /f "delims=" %%a in ('c:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe logcat -d -v raw ^| find "BBTests" ^| more') do ( 
@echo %%a
)

我怎样才能逃离";程序文件";?我试过:

FOR /f "delims=" %%a in ("""c:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe"" logcat -d -v raw ^| find "BBTests" ^| more") do ( 

但是%%a捕获for循环行文本,而不是logcat命令输出。

如果我将该路径设置为env,则运行以下操作即可:

FOR /f "delims=" %%a in ('adb logcat -d -v raw ^| find "BBTests" ^| more') do ( 

我想你会这样做:

@For /F Delims^= %%G In ('^""%ProgramFiles(x86)%Androidandroid-sdkplatform-toolsadb.exe" logcat -d -v raw ^| "%SystemRoot%System32find.exe" "BBTests" ^| "%SystemRoot%System32more.com"^"') Do @Echo %%G

或者,如果您不喜欢使用%ProgramFiles(x86)%变量:

@For /F Delims^= %%G In ('^""C:Program Files (x86)Androidandroid-sdkplatform-toolsadb.exe" logcat -d -v raw ^| "%SystemRoot%System32find.exe" "BBTests" ^| "%SystemRoot%System32more.com"^"') Do @Echo %%G

相关内容

  • 没有找到相关文章