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

[文件操作] [已解决]求助批处理怎样把多条命令的返回结果输出到文本不换行?

本帖最后由 pcl_test 于 2017-3-31 17:42 编辑

比如这两个命令(命令可能不同)
  1. wmic datafile where "drive='c:' and path='\\Windows\\' and filename='notepad'" get filename,size | find "notepad" >c:\1.txt
  2. wmic datafile where "drive='c:' and path='\\Windows\\' and filename='notepad'" get filename,size | find "notepad" >>c:\1.txt
复制代码
想让他们不换行,用下面的命令,可是没输出
  1. @echo off  
  2. for /f "tokens=*" %%i in ('wmic datafile where "drive='c:' and path='\\Windows\\' and filename='notepad'" get filename,size | find "notepad"') do ((set/p="%%i"<nul)>>"c:\1.txt")
  3. pause
复制代码
请教有没什么办法让多条命令的输出不换行
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

回复 1# habulu
两个例子参考下
  1. @echo off
  2. for /f "delims=" %%i in ('echo 125 ^&^& ver ^&^& echo 345') do set /p=%%i<nul
  3. pause
复制代码
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set s=
  4. for /f "tokens=1-2" %%i in ('wmic datafile where "drive='c:' and path='\\Windows\\' and filename='notepad'" get filename^,size ^| find "notepad" ^&^& wmic datafile where "drive='c:' and path='\\Windows\\' and filename='regedit'" get filename^,size ^| find "regedit"') do set "s=!s!%%i %%j "
  5. >1.txt echo !s!
  6. pause
复制代码
1

评分人数

TOP

可以了  非常感谢

TOP

返回列表