中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-24 19:47
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [提问]bat中转向输出问题 查看 1,597 回复 6
楼 主 [提问]bat中转向输出问题 发表于 2006-06-28 14:49 ·  中国 四川 成都 联通
铂金会员
★★★★
积分 7,493
发帖 2,672
注册 2005-09-02 00:00
20年会员
UID 42173
性别 男
状态 离线
1.
echo a>D:\a,txt
结果生成了文件a,内容为test,txt
改成
echo a>"D:\a,txt"
正常

2.
echo test 1>1.txt adsfadf
生成1.txt,内容:
test adsfadf

这些现象怎么解释呢?

如果用这些特性输出exe木马那么……

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

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'>"
2 发表于 2006-06-28 15:24 ·  中国 北京 联通
银牌会员
★★★
DOS联盟捡破烂的
积分 1,144
发帖 425
注册 2005-10-20 00:00
20年会员
UID 43784
来自 北京
状态 离线
echo hello world>1.txt

echo >1.txt hello world

echo hello>1.txt world

>1.txt echo hello world

看看这个,也许你就会明白了....................
3 发表于 2006-06-28 17:02 ·  中国 四川 成都 联通
铂金会员
★★★★
积分 7,493
发帖 2,672
注册 2005-09-02 00:00
20年会员
UID 42173
性别 男
状态 离线
难道说那些重定向像ANSI转义代码那样被忽略了??

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'>"
4 发表于 2006-06-29 09:53 ·  中国 山西 大同 中移铁通
元老会员
★★★★
Batchinger
积分 4,432
发帖 1,512
注册 2002-10-18 00:00
23年会员
UID 19
性别 男
状态 离线
Re electronixtar:

这是由 cmd/command 的命令行预处理机制造成的。

命令行解释器在正式执行读入的一条命令之前,会进行许多预处理过程,以对其中的转义符号进行转义解释和过滤,并完成命令行的格式化工作,包括空格和制表符缩减,命令行参数界分,IO端口的重定向等等。

而命令行中的各种符号存在优先级,也就是说,它总是先处理优先级最高的符号,待将符号处理并转义后,将此符号滤去再处理新得到的命令行,带到所有的特殊符号都被处理后,才会正式执行最后得到的命令语句。这在一些语言的预编译或预处理过程中也比较常见。

比如说,命令行前后和之间的空格和制表符就具有很高的优先级,它具有界分命令和参数的作用;而表征变量的百分号%、表征字符串得引号对""也具有比较高的优先级,比管道和重定向都要高。另外,cmd中引入的表征单字符的^、表征变量延迟的叹号对!!,容纳语句块的括号对(),连接命令的&、&&、||等,使得命令行的优先级更加丰富,也更加复杂。
※ Batchinger 致 Bat Fans:请访问 批处理编程的异类 ,欢迎交流与共享批处理编程心得!
5 发表于 2006-06-29 11:38 ·  中国 四川 成都 联通
铂金会员
★★★★
积分 7,493
发帖 2,672
注册 2005-09-02 00:00
20年会员
UID 42173
性别 男
状态 离线
博大精深,受教了~

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'>"
6 发表于 2006-06-30 10:16 ·  中国 安徽 芜湖 电信
高级用户
★★★
积分 866
发帖 415
注册 2005-12-04 11:19
20年会员
UID 46459
状态 离线
太精彩,又是一个高手过招,
7 发表于 2006-06-30 14:04 ·  中国 广东 深圳 天威有线宽带(关内)
初级用户
积分 96
发帖 44
注册 2006-06-26 17:52
19年会员
UID 57603
性别 男
来自 深圳
状态 离线
厉害,佩服深刻!
学到,慢慢掌握
论坛跳转: