Board logo

标题: 求教:“如何在纯DOS下向文件写入>nul”? [打印本页]

作者: 0451lym     时间: 2006-11-4 22:28    标题: 求教:“如何在纯DOS下向文件写入>nul”?
弄了好几天都没弄明白,谁知到请告诉我。先谢谢了!

例如:1.BAT
echo dir c: /w ^>nul >> b.BAT
运行后可以向b.BAT写入:dir c: /w >nul


但是在纯DOS下就会得到:dir c: /w ^

我想问得是“如何在纯DOS下向文件写入>nul”?


多谢高手指点!!!

作者: 0451lym     时间: 2006-11-5 02:16
没人理我?????

作者: newaifi     时间: 2006-11-5 05:26
@echo echo dir c: /w ^>nul >> b.BAT

作者: redtek     时间: 2006-11-5 07:35
Originally posted by newaifi at 2006-11-5 05:26:
@echo echo dir c: /w ^>nul >> b.BAT


纯DOS(例如:MS-DOS 6.22)环境下这个 ^脱字符是无效的,上面这行执行不会输出@echo echo dir c:/w后面的内容~:)

作者: redtek     时间: 2006-11-5 08:11
纯DOS(MS-DOS 6.22)下向文本文件内写入">"重定向字符:



echo exit|command /k prompt echo dir c:/w $Gnul$_|find "echo" >>b.txt


执行后,其 b.txt 内容为:

echo dir c:/w >nul




等等……不知道你的command.com文件的具体位置的情况下,为了保险,用ComSpec环境变量,改成如下:


echo exit|%comspec% /k prompt echo dir c:/w $Gnul$_|find "echo" >>b.txt


但是加了%comspec%环境变量(这个变量内存有command.com的物理位置)以后,
上面这句就必须在批处理文件内执行,如果在命令行执行它是无效的。

Last edited by redtek on 2006-11-5 at 08:16 AM ]

作者: 0451lym     时间: 2006-11-5 13:00
谢谢高手,等明天我学习一下!

作者: redtek     时间: 2006-11-5 20:27
我哪是什么高手呀,这都是跟electronixtar兄的贴子学来的~:)
electronixtar兄的贴子非常精彩,一定要去看看:

纯DOS下读取文件首行为变量,一句话
http://www.cn-dos.net/forum/viewthread.php?tid=23697&fpage=1&highlight=%E5%8F%98%E9%87%8F&sid=Y8W14Z

(这个贴子内容又精彩又好玩~:)

还有vkill、NaturalJ0、namejm版主和NaturalJ0兄一起讨论和交流的关于取文本到变量的贴子,
都非常精彩,用上了很多批处理参数特性和技巧:)

http://www.cn-dos.net/forum/viewthread.php?tid=22635&fpage=1&highlight=%E5%8F%98%E9%87%8F&page=1

0451lym从这两个贴子上会得到无限启发~:)