中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-02 05:55
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何在批处理中输出带"set"和"if"等语句的内容 查看 1,291 回复 8
楼 主 如何在批处理中输出带"set"和"if"等语句的内容 发表于 2006-10-25 23:19 ·  中国 河北 沧州
中级用户
★★
MS-DOS爱好者
积分 397
发帖 87
注册 2002-12-15 00:00
23年会员
UID 517
性别 男
状态 离线
如题,想做一个批处理文件,希望它能够将带"set"和"if"等语句的内容输出到文本文件中,但是整了几次都没有成功,请各位朋友指点一下,先谢谢了!

内容如:

echo set WshShell=WScript.CreateObject("WScript.Shell")>shou.vbs
……
2 发表于 2006-10-25 23:27 ·  中国 江苏 苏州 电信
银牌会员
★★★
积分 1,181
发帖 533
注册 2006-08-14 12:54
19年会员
UID 60484
状态 离线
我直接试了下你的代码,没发现问题啊。
3 发表于 2006-10-25 23:57 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  这样写应该没有问题的啊。你怎么不行呢?
4 发表于 2006-10-26 00:12 ·  中国 北京 东城区 联通
金牌会员
★★★★
积分 2,902
发帖 1,147
注册 2006-09-21 12:00
19年会员
UID 63324
性别 男
状态 离线
Originally posted by sglxy at 2006-10-25 23:19:
如题,想做一个批处理文件,希望它能够将带"set"和"if"等语句的内容输出到文本文件中,但是整了几次都没有成功,请各位朋友指点一䠮..


为什么喜欢不把遇到的问题(你试验不成功的批处理文件内容)贴全了?
如果你不贴全了只测试上面这句没问题,完全可以写入文件。

但是,你未贴上的批处理内容很有可能遇到特殊符号、语法、重定向符……等等各种问题……

如果你不贴全了,大家都要不断的猜,
如果猜不中的话,你还要再贴上部分内容,
大家还要猜……最后只能是你遇到的问题不能一次解决,还要发N多的贴子~:)



C:\TEMP>copy con a.bat
echo set WshShell=WScript.CreateObject("WScript.Shell")>shou.vbs
^Z
已复制 1 个文件。

C:\TEMP>a.bat

C:\TEMP>echo set WshShell=WScript.CreateObject("WScript.Shell") 1>shou.vbs



C:\TEMP>type shou.vbs
set WshShell=WScript.CreateObject("WScript.Shell")



你仅贴上的这句实验完全没有问题:)

请珍惜时间把问题贴全了,一次说明~:)))
    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
5 发表于 2006-10-26 00:13 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
6 发表于 2006-10-26 00:29 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  F4的 redtek 兄测试的代码中,执行a.bat文件之后,"echo set WshShell=WScript.CreateObject("WScript.Shell") 1>shou.vbs"一句中,怎么会多出一个"1"啊?不明白是什么原因。
7 发表于 2006-10-26 00:38 ·  中国 北京 联通
银牌会员
★★★
努力做坏人
积分 1,185
发帖 438
注册 2006-08-28 12:00
19年会员
UID 61449
来自 北京
状态 离线
我想lxmxn兄最好还是先看看XP的帮助文档吧

STDIN 0 键盘输入
STDOUT 1 输出到命令提示符窗口
STDERR 2 错误输出到命令提示符窗口


其实每次 >都应该是 1>test.txt 的,不过这个1是可以省略的,但是 2>nul 这个确不能省略,原因很简单,如果省略了就不知道是正常输出还是错误输出了,代表键盘输入0<nul 这个也是可以 <nul以这样的形式来表示的,好了,自己体会吧
我今后在论坛的目标就是做个超级坏人!!!
8 发表于 2006-10-26 01:20 ·  中国 四川 南充 电信
超级版主
★★★★
我爱DOS
积分 5,310
发帖 2,044
注册 2005-09-26 12:00
20年会员
UID 42843
性别 男
来自 四川南充
状态 离线
9 发表于 2006-10-26 01:46 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线

  呵呵,理解了,多谢两位高人指点。
论坛跳转: