[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] [已解决]批处理for语句获取带有空格的目录/路径里的程序的返回结果出错如何解决?

本帖最后由 freesoft00 于 2016-4-11 23:40 编辑
  1. for /f "tokens=1 delims= " %%i in ('"E:\ff ff 好的\test\bcdedit.exe"^|findstr /iv "description"') do (
  2.         echo %%i
  3. )
复制代码
bcdedit在有空格的目录存放,执行的时候老是有错误。提示ff错误。
1

评分人数

  1. set "path=E:\ff ff 好的\test;%path%"
  2. for /f "tokens=1" %%i in ('bcdedit.exe ^| findstr /i /v "description"') do (
  3.     echo,%%i
  4. )
复制代码
1

评分人数

Talk is cheap. Show me the code.
没事不要瞎扯淡,有能耐就把代码贴出来给我看。

TOP

方案2:
  1. for /f %%i in ('"E:\ff ff 好的\test\bcdedit.exe" ^| findstr /i /v description') do (
  2.     echo,%%i
  3. )
复制代码
方案3:
  1. for /f %%i in ('^,"E:\ff ff 好的\test\bcdedit.exe" ^| findstr /i /v "description"') do (
  2.     echo,%%i
  3. )
复制代码
1

评分人数

TOP

本帖最后由 freesoft00 于 2016-4-11 21:50 编辑

回复 2# gawk


    为什么你这样可以,而我那样就不行呢?
for()中中间的名称有空格的话不可以用双引号吗?
添加的path=E:\ff ff 好的\test这个环境变量是临时的吧?执行完成后就自动删除了对吗?

TOP

本帖最后由 pcl_test 于 2016-4-11 21:54 编辑
  1. for /f "tokens=1" %%i in ('E:\"ff ff 好的\test\bcdedit.exe"^|findstr /iv "description"') do echo %%i
复制代码
1

评分人数

TOP

回复 3# WHY


    兄弟我想要前面的设定"tokens=1 delims= "

TOP

回复 6# freesoft00


    你自己加上吧。
"tokens=1 delims= " 是默认设定,加不加效果是一样的。

TOP

回复 7# WHY


    哦,好的,谢谢!

TOP

返回列表