windows – 批处理 – 将命令输出存储到变量(多行)
发布时间:2020-12-13 21:26:09 所属栏目:Windows 来源:网络整理
导读:我知道这样做的方法有点像作弊但下面的代码创建一个临时文件,然后删除它.我不希望这种情况发生.这样做有适当或更好的方法吗? command 2 "temp"set /p OUTPUT="temp"del "temp"echo %OUTPUT% 我知道有一个使用for循环的解决方案但是对于返回多行结果的命令不
我知道这样做的方法有点像作弊但下面的代码创建一个临时文件,然后删除它.我不希望这种情况发生.这样做有适当或更好的方法吗?
command 2>> "temp" set /p OUTPUT=<"temp" del "temp" echo %OUTPUT% 我知道有一个使用for循环的解决方案但是对于返回多行结果的命令不起作用.我想将所有这些存储到我的变量中. (我试过这个code顺便说一下)
您可以将其包含在包含换行符的单个变量中.
setlocal EnableDelayedExpansion set LF=^ REM The two empty lines are required here set "output=" for /F "delims=" %%f in ('dir /b') do ( if defined output set "output=!output!!LF!" set "output=!output!%%f" ) echo !output! 但是由于嵌入式换行,以后处理数据可能有点棘手. 通常使用数组更容易. setlocal EnableDelayedExpansion set "output_cnt=0" for /F "delims=" %%f in ('dir /b') do ( set /a output_cnt+=1 set "output[!output_cnt!]=%%f" ) for /L %%n in (1 1 !output_cnt!) DO echo !output[%%n]! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-7 – 在Alfresco中使用“在Microsoft Office中编辑
- windows-server-2008 – VMware vCenter Server如何工作以及
- 来自DOS或Windows的MongoDB命令
- windows-server-2008 – 调试服务器的慢速传输速率
- 如何在Windows Git存储库中修复区分大小写
- windows dos窗口下如何复制和粘贴
- 远程桌面 – Windows远程桌面vs tightvnc服务器
- Windows – ToAscii / ToUnicode在键盘钩子中销毁死锁
- 如何从Windows中的文件选择重命名部分文件名?
- windows – ionic 2启动失败,生成命令出错
推荐文章
站长推荐
- winapi – Win32 WM_SETCURSOR,WM_MOUSEMOVE总是
- 执行DOS命令并返回结果
- 使用Windows 7 Professional而不是Windows 7企业
- ms12-020复现-xp蓝屏
- windows-server-2008 – 使用Exchange 2010进行域
- windows-server-2008 – 如果/ bin更改,我可以阻
- windows-server-2008 – Windows 2008-R2用户重新
- win10输入法问题,已禁止IME 问题解决
- Windows Server 2016-Hyper-V网络虚拟化概述
- windows-server-2008 – 与Windows 7和2008 Serv
热点阅读