中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-07-02 19:44
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]如何实现既在屏幕上显示执行结果又可以把结果保存到 查看 4,994 回复 26
楼 主 [求助]如何实现既在屏幕上显示执行结果又可以把结果保存到 发表于 2006-06-27 22:28 ·  中国 广东 珠海 电信
初级用户
积分 112
发帖 40
注册 2006-06-23 19:52
20年会员
UID 57473
性别 男
状态 离线
这个标题的意思是说,比如执行了xcopy命令,会在屏幕上显示很多条执行结果:

---------------------------------------
\\192.168.1.1\update\1.txt
\\192.168.1.1\update\2.txt
\\192.168.1.1\update\3.txt
复制了3个文件
---------------------------------------

如果我需要将此命令结果保存到d:\a.txt,故我使用了xcopy ....>d:\a.txt ,但这样做的结果是屏幕上不会显示上面执行的结果了。虽然现在可以再最后加一句
type d:\a.txt 将刚才的结果在屏幕上输出,但却具有滞后效果。而且不是想当初一样每xcopy一个文件就会在屏幕上动态显示执行结果。

我现在想问有没有一种语句可以即不影响在屏幕上显示结果,同时可以将结果保存到一个文件中。
2 发表于 2006-06-28 10:51 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
可以通过提供这种功能的工具来做到,如TEE,例如使用以下语法:

XCOPY .... | TEE D:\A.TXT

这样既不影响在屏幕上显示结果,同时可以将结果保存到一个(或多个)文件中。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

3 发表于 2006-06-28 12:47 ·  中国 广东 珠海 电信
初级用户
积分 112
发帖 40
注册 2006-06-23 19:52
20年会员
UID 57473
性别 男
状态 离线
功能说明:读取标准输入的数据,并将其内容输出成文件。
  语   法:tee [-ai][--help][--version][文件…]
  补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。我们可利用tee把管道导入的数据存成文件,甚至一次保存数份文件。
  参   数:-a 附加到既有文件的后面,而非覆盖它。如果给予tee指令的文件名称已经存在,预设会覆盖该文件的内容。加上此参数后,数据会新增在该文件内容的最后面,而不会删除原先之内容。
       -i 忽略中断信号
       --help 在线帮助
       --version 显示版本信息
  范   例:
  列出文本文件slayers.story的内容,同时复制3份副本,文件名称分别为ss-copy1、ss-copy2、ss-copy3:
  $ cat slayers.story |tee ss-copy1 ss-copy2 ss-copy3

-----------------------------------------------------------------------------------------

可惜我就是下载不到这个 软件啊。DOS之家里也不知道放在哪个分类下。你能告诉我下载地址吗?
4 发表于 2006-06-28 13:33 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
Originally posted by zhaxi at 2006-6-28 12:47 PM:
功能说明:读取标准输入的数据,并将其内容输出成文件。
  语   法:tee
  补充说明:tee指令会从标准输入设备 ...


那些网站中是没有这个软件的。DOS版的TEE见附件:
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
lhaboy085 +1 2009-06-22 13:34
附件
TEE.EXE (62.5 KiB, 下载附件所需积分 1 点, 下载次数: 156)
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

5 发表于 2006-06-28 13:56 ·  中国 北京 联通
初级用户
积分 120
发帖 32
注册 2006-06-19 16:31
20年会员
UID 57256
状态 离线
同问这个问题:
@echo off
MKDIR "..\backup">>%DATE%.log
pause

如果back文件夹存在,在dos console窗口中会显示
A subdirectory or file ..\backup already exists.
而%date%.log中内容为空。
为什么重定向到log文件没有用?
6 发表于 2006-06-28 14:01 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
MKDIR "..\backup">>%DATE%.log

应改为:

MKDIR "..\backup" 2>>%DATE%.log

MD "..\backup" 2>>%DATE%.log
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

7 发表于 2006-06-28 14:01 ·  中国 上海 虹口区 电信
高级用户
★★
积分 653
发帖 252
注册 2006-04-16 19:48
20年会员
UID 53939
状态 离线
Originally posted by qdcr at 2006-6-28 13:56:
同问这个问题:
@echo off
MKDIR "..\backup">>%DATE%.log
pause

如果back文件夹存在,在dos console窗口中会显示
A subdirectory or file ..\backup already exis ...


>> 只重定向标准输出,不重定向错误输出,要同时重定向错误输出,使用:

MKDIR "..\backup">>%DATE%.log 2>&1
8 发表于 2006-06-28 14:06 ·  中国 四川 成都 联通
铂金会员
★★★★
积分 7,493
发帖 2,672
注册 2005-09-02 00:00
20年会员
UID 42173
性别 男
状态 离线
为什么用这个

xcopy ........ 1>con 1>D:\a.txt

或者

xcopy ....... 1>con 1>D:\a.txt 1<&2

不行呢?

可不可以把句柄1的数据copy到句柄4中,然后1到屏幕,4到文件?

或者,用mode命令?感觉上用第三方工具不是很爽

[ Last edited by electronixtar on 2006-6-28 at 14:24 ]

C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
9 发表于 2006-06-28 19:36 ·  中国 广东 珠海 电信
初级用户
积分 112
发帖 40
注册 2006-06-23 19:52
20年会员
UID 57473
性别 男
状态 离线
Originally posted by Wengier at 2006-6-28 13:33:


那些网站中是没有这个软件的。DOS版的TEE见附件:



谢谢Wengier啊。我已经拷贝下来了。马上用用看。

另外谁能不能帮我把 choice.exe 也传上来,呵呵。我现在是在XP下使用。还不会装dos。几个月来就在xp下写批处理。
10 发表于 2006-06-29 01:21 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
Originally posted by electronixtar at 2006-6-28 02:06 PM:
为什么用这个

xcopy ........ 1>con 1>D:\a.txt

或者

xcopy ....... 1>con 1>D:\a.txt 1<&2

不行呢?

可不可以把句柄1的数据copy到句柄4中,然后1到屏幕,4到文件?

或者,用mode命令?感觉上用第三方工具不是很爽


这些当然是不行了,如果你真想不用第三方工具来实现的话,还不如这样:
xcopy ....... >a.txt | type a.txt
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

11 发表于 2006-06-29 01:24 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
Originally posted by zhaxi at 2006-6-28 07:36 PM:



谢谢Wengier啊。我已经拷贝下来了。马上用用看。

另外谁能不能帮我把 choice.exe 也传上来,呵呵。我现在是在XP下使用。还不会装dos。几个月来� ...


choice命令基本上只在纯DOS下比较有用,在XP下可以用set /p来代替。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

12 发表于 2006-06-29 18:54 ·  中国 广东 珠海 电信
初级用户
积分 112
发帖 40
注册 2006-06-23 19:52
20年会员
UID 57473
性别 男
状态 离线
为什么我在xp的cmd中使用tee以后弹出一个新的窗口,显示了一行乱码就结束了。我猜这行乱码肯定就是“已复制 1个文件”。 我要安装什么东西才能把乱码去掉呢。

COPY d:\dos\end.txt d:\ | TEE D:\A.TXT
13 发表于 2006-06-30 01:46 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
Originally posted by zhaxi at 2006-6-29 06:54 PM:
为什么我在xp的cmd中使用tee以后弹出一个新的窗口,显示了一行乱码就结束了。我猜这行乱码肯定就是“已复制 1个文件”。 我要安装什么东西才能把� ...


我自己试了一下上面这个命令,但并没有发现什么弹出显示了一行乱码的新窗口呀?
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

14 发表于 2006-07-02 16:24 ·  中国 广东 珠海 电信
初级用户
积分 112
发帖 40
注册 2006-06-23 19:52
20年会员
UID 57473
性别 男
状态 离线
哎。我在xp的cmd下运行Tee后好象显示不支持中文名。遇到有中文名的路径显示为???。
这该怎么办啊。
15 发表于 2006-07-03 09:46 ·  加拿大 Bell
系统支持
★★★★★★
“新DOS时代”站长
积分 27,736
发帖 10,521
注册 2002-10-09 12:00
23年会员
UID 9
状态 离线
用"chcp 936"命令可将当前显示代码页切换为简体中文。
Wengier - 新DOS时代

欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/

E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)

论坛跳转: