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


  Quote:
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/view ... 7%8F&sid=Y8W14Z

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

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

http://www.cn-dos.net/forum/view ... E9%87%8F&page=1

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