![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 04:39 |
共 48,037 主题排行 / 350,122 发帖 / 今日 2 篇 / 48,250 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 脚本命名的问题 |
| 可打印版本 1,597 / 5 |
| 第1楼 cr2516 | 发表于 2006-09-21 00:37 |
| 初级用户 发帖 12 积分 32 | |
|
脚本命名的问题 我为了测试网络
这样写了一个简单的脚本 tracert 212.108.2.98 >>1.txt tracert 202.117.4.83 >>1.txt 脚本的名字命名为 tracert.cmd 为什么就运行不了 显示的结果都是 tracert 212.108.2.98 >>1.txt 我把脚本的名字改成 2.cmd 就可以了 是什么原因那 |
|
| 第2楼 namejm | 发表于 2006-09-21 00:43 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
|
批处理文件名与命令名重名,则批处理内的命令实际上执行的是这个批处理。
|
|
| 第3楼 pengfei | 发表于 2006-09-21 00:43 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
这是因为DOS执行的tracert命令为外部命令, 这就需要调用tracert.exe.
而你的批处理命名为tracert.cmd, 执行批处理中tracert命令时, 会自动在系统默认路径和当前目录中按顺序搜索tracert的可执行文件, 这样tracert.cmd就被反复调用, 而无法正常执行命令了. 楼主试试把代码改为: tracert.exe 212.108.2.98 >>1.txt tracert.exe 202.117.4.83 >>1.txt 批处理名字为tracert.cmd, 看能否正常执行. 所以批处理命名最好不要取和外部命令相同的名字! [ Last edited by pengfei on 2006-9-21 at 00:44 ] |
|
| 第4楼 cr2516 | 发表于 2006-09-21 00:49 |
| 初级用户 发帖 12 积分 32 | |
|
pengfei
强呀 非常感谢!! |
|
| 第5楼 electronixtar | 发表于 2006-09-21 00:53 |
| 铂金会员 发帖 2,672 积分 7,493 | |
|
这个问题比较经典,让我想起了cmd的一个社会工程学缺陷~
|
|
| 第6楼 cr2516 | 发表于 2006-09-21 00:55 |
| 初级用户 发帖 12 积分 32 | |
|
什么缺陷 让我这菜鸟也学学
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |