![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 17:23 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [讨论]2次ping1 不等于 1次ping2 |
| 可打印版本 2,271 / 2 |
| 第1楼 523066680 | 发表于 2008-12-27 17:30 |
| 银牌会员 发帖 1,133 积分 2,362 | |
|
[讨论]2次ping1 不等于 1次ping2 题目: 2次ping1 不等于 1次ping2
文/523066680 :: 这里ping1指 ping -n 1 127.1>nul ; ping2 指ping -n 2 127.1>nul 偶然发现 for /l %%a in (1,1,2) do (ping -n 1 127.1>nul) 跟ping -n 2 127.1>nul 等待的时间相差甚远,所以,他们不相等。 我尝试了把for 中的 2 改为 9 依然不到一秒,感觉这个"精确度"还可以,所以后来写 特效一直用,我开始学批处理的时候是很乱来的,后来简化为 for /l %%a in (1,1,2) do (ping -n>nul) 终于,在群里发代码的时候有人问,怎么不直接 ping -n 2 127.1>nul (下面简称为ping2) 我回答ping2 的时间大于 两次 ping1 的时间,而 2 次 ping1 带来的效果刚刚好。 再后来HAT说,直接 "ping -n>nul" 是错误的句子,如果ping -n>nul达到的效果,那么其他 命令应该也一样,遂以attrib为例,一试,时间真的一样,于是晕晕的下线了。 唉,忘了反驳了,要是用echo 就得几百次了。attrib也是刚好有一点的延时. 以下整理个人观点: 后来看到一些批处理例如: 逐字读文章的批处理 还有一些特效等 为了达到适合的速度,有的用 几千次echo, 有的用 生成 sleep.xxx 我认为我所倡导的方法是比较好的,用代码说话吧: 怎么样?这个打字的速度刚刚好吧? 对于这个打字效果,用 几千次 echo,>nul的缺点在于 执行次数多,对于不同的机子,拖延的时间可能会不一样。 ping -n 2 127.1>nul 打字拖延时间太长。 生成 sleep 的我没话说,只是个人不习惯.... for /l %%b in (1,1,N) do (ping -n 1 127.0>nul) 的好处就在于,1-9 次的时间都是不超过1秒的,可以通过选择 1-9 次 这来达到比较详细 的延时效果,相对于echo, 次数更好选择,而且对于不同的机子,一般效果一样。 (范围一般选 1-9 ,再大就接近秒了...) |
|
| 第2楼 pooronce | 发表于 2008-12-27 18:01 |
| 中级用户 发帖 250 积分 484 | |
|
不知道有没有人计算过ping的杂项耗时。。。
ping -n 1 -w 2850 99>nul |
|
| 第3楼 BC | 发表于 2008-12-28 13:59 |
| 中级用户 发帖 175 积分 338 | |
|
个人觉得和 植树原理 有关
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |