|
wjcing
初级用户
积分 71
发帖 59
注册 2007-12-27
状态 离线
|
『楼 主』:
[已结]如何把当前输出到屏幕的结果输出到文件
for /l %%a in (1 1 10) do (set /p=ok 0>nul) 1.我用Set /p向屏幕输出了10个"ok",要怎么做才能把这10个"Ok"一起保存到一个文本文件中呢?如执行了以上命令后就输出:ok ok ok ok ok ok ok ok ok ok
我想取出"ok ok ok ok ok ok ok ok ok ok"保存到文件中去.
2.能解释一下这个命令的意思吗:set /p=ok 0>nul ,我只知道Set /p 可以等待用户的输入,而set /p中没有变量,是不是就是把ok放到当前屏管道上?0>nu又l是怎么一回事呢?
希望各位高手帮帮忙,谢谢了.
———————————————————————
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块,扣分予以警示。
——管理员
———————————————————————
[ Last edited by HAT on 2008-12-20 at 22:18 ]
|
|
2008-12-20 16:03 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
2 楼』:
本版搜索以下内容:
重定向
句柄
>nul
>nul 2>nul
|
|
|
2008-12-20 16:33 |
|
|
wjcing
初级用户
积分 71
发帖 59
注册 2007-12-27
状态 离线
|
『第
3 楼』:
HAT版主,我就是不知道nul控制台向输入设备循环10次输出结果后,,再用什么方法他们这10次得到的结果一起重写定向到文件中去.
|
|
2008-12-20 18:09 |
|
|
wjcing
初级用户
积分 71
发帖 59
注册 2007-12-27
状态 离线
|
『第
4 楼』:
如,我再加个循环,,,我把第一次循环的10个OK输出为一行,,第二输出10个0k1又是一行,,,如果我直接 >文件.txt 那它们就是一行一行的了。。
|
|
2008-12-20 18:21 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
5 楼』:
是这个意思么?
@echo off
for /l %%a in (1 1 10) do (
set /p=ok <nul>>a.txt
)
|
|
|
2008-12-20 19:53 |
|
|
wjcing
初级用户
积分 71
发帖 59
注册 2007-12-27
状态 离线
|
『第
6 楼』:
呵呵。谢谢HAT版主了,
@echo off
for /l %%i in (1 1 10) do (
for /l %%a in (1 1 10) do (
set /p=ok%%i <nul>>a.txt
)
echo. >>a.txt
)
pause
还是要自己加个换行
我开始是这样想的可不可以用什么方法一次取出这10个OK,之后再一次写入文件中,不用一次一次的写进文件,要是没有方法这样也行了。。反正也是用改其它语言的程序来学习的,呵呵。。谢谢版主了。
|
|
2008-12-20 20:49 |
|
|
glbosom
初级用户
积分 31
发帖 17
注册 2008-1-4
状态 离线
|
『第
7 楼』:
用延迟的方法先把十个 “ok” 组合起来然后在输出试一试
思路是这样的 我试了一下没写出来 高手应该可以的。
|
|
2008-12-20 23:33 |
|
|
HAT
版主
积分 9023
发帖 5017
注册 2007-5-31
状态 离线
|
『第
8 楼』:
Re 7楼
是这个意思么?
@echo off
setlocal enabledelayedexpansion
for /l %%i in (1 1 10) do (
set row=
for /l %%a in (1 1 10) do (
set row=!row! ok%%i
)
echo.!row!>>a.txt
)
|
|
|
2008-12-21 11:49 |
|