|  | 
 
| PPdos 高级用户
 
     
 
 
 积分 783
 发帖 268
 注册 2006-12-26
 状态 离线
 | 
|    『楼 主』:
 批处理IP扫描器
 
使用 LLM 解释/回答一下 
 
 
网络课设置时 老出现IP冲突 于是就写了一个小程序 运行在别人机器上查看 
经修改之后可以扫描不同网段 感谢redtek大虾的多线程思路 现给出源代码:
 @echo off
 
 if "%1"=="" goto PPdos
 title Finished %s%/100
 ping -w 1 -n 1 %1.%2>nul&&call :ananlyse %1.%2
 exit
 
 :PPdos
 set /p ip=IP adresse (ex:192.168.1):
 for /l %%i in (1 1 255) do (
 set /a s=%%i*100/255
 start /B %~s0 %ip% %%i
 if "%%i"=="120" ping 127.0>nul
 )
 pause>nul
 
 :ananlyse
 for /f "tokens=3,9 delims==: " %%i in ('ping -n 1 -w 2 -a %1^|find "TTL"') do (
 echo.%%i	OK	TTL=%%j
 )
 
 
加张截图:
   
IPfinder2.bat 去除 find 提高速度降低 内存占用 更改如下
 @echo off
 if "%1"=="" goto PPdos
 title Finished %s%/100
 ping -w 1 -n 1 %1.%2 >nul&&call :ananlyse %1.%2
 exit
 
 :PPdos
 set /p ip=IP adresse (ex:192.168.0):
 for /l %%i in (1 1 255) do (
 set /a s=%%i*100/255
 start /B %~s0 %ip% %%i
 if "%%i"=="128" ping 127.0>nul
 )
 pause>nul
 
 :ananlyse
 for /f "tokens=12 delims==. " %%i in ('ping -w 1 -n 1 %1') do (
 if not "%%i"==" " echo.%1	OK	TTL=%%i
 )
 
 Last edited by PPdos on 2007-2-23 at 12:35 AM ]
 
 
 
 
 
 
附件
1:  IPFinder.rar (2007-2-16 10:07, 391 bytes, 下载附件所需积分 1 点
,下载次数: 156) 附件
2:
  IPFinder2.rar (2007-2-23 13:36, 381 bytes, 下载附件所需积分 1 点
,下载次数: 124) 
 
 |  
                  |  菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
 |  | 
|  2007-2-16 10:07 |  | 
|  | 
 
| PPdos 高级用户
 
     
 
 
 积分 783
 发帖 268
 注册 2006-12-26
 状态 离线
 | 
| 『第 2 楼』:
 仅扫描IP段的核心代码
 
使用 LLM 解释/回答一下 
 
 
@echo offif "%1"=="" goto PPdos
 ping -n 1 -w 1 %1.%2 >nul&&echo.%1.%2	OK
 exit
 :PPdos
 set /p ip=Tapez IP (ex:192.168.1):
 for /l %%i in (1 1 255) do (
 
 start /B %~s0 %ip% %%i
 )
 
 
 
 
 
 |  
                  |  菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
 |  | 
|  2007-2-16 10:50 |  | 
|  | 
 
| gne3 高级用户
 
     DOS学徒
 
 
 积分 526
 发帖 252
 注册 2007-2-12
 状态 离线
 |  | 
|  2007-2-17 01:05 |  | 
|  | 
 
| yc421206 初级用户
 
   
 
 
 
 积分 52
 发帖 21
 注册 2006-1-4
 状态 离线
 | 
| 『第 4 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
Originally posted by PPdos at 2007-2-16 10:07:网络课设置时 老出现IP冲突 于是就写了一个小程序 运行在别人机器上查看
 
 经修改之后可以扫描不同网段 感谢redtek大虾的多线程思路 现给出源代码 ...
 
dear sir: 
請問"start /B %~s0 %ip% %%i" 
這句是什麼意思呢? 
這整句我都不曉得在幹什麼用的 
煩請為我解答,謝謝 
 
 
 
 |  | 
|  2007-2-19 13:35 |  | 
|  | 
 
| yc421206 初级用户
 
   
 
 
 
 积分 52
 发帖 21
 注册 2006-1-4
 状态 离线
 | 
| 『第 5 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
Originally posted by yc421206 at 2007-2-19 13:35:
 dear sir:
 請問"start /B %~s0 %ip% %%i"
 這句是什麼意思呢?
 這整句我都不曉得在幹什麼用的
 煩請為我解答,謝謝
 
小弟還是不明白此"%~s0",使用規格以及含意 
如試著將它移除,程式即出錯,請問是為什麼呢?? 
 
 
 
 |  | 
|  2007-2-20 02:08 |  | 
|  | 
 
| PPdos 高级用户
 
     
 
 
 积分 783
 发帖 268
 注册 2006-12-26
 状态 离线
 | 
| 『第 6 楼』:
 分析
 
使用 LLM 解释/回答一下 
 
 
这个程序很有意思 我想重新做下诠释,希望能让大家理解: 
@echo off
 
if "%1"=="" goto PPdos
 
::注释:运行程序后 如果参数没有定义 则调用模块 PPdos
 
ping -n 1 -w 1 %1.%2 >nul&&echo.%1.%2        OK
 
::注释:用一个数据包最多一秒延时的方法ping 参数1.参数2(即ip),成功就显示ok
 
exit
 
:PPdos 
set /p ip=Tapez IP (ex:192.168.1): 
::注释:定义ip的前三位
 
for /l %%i in (1 1 255) do ( 
::注释:ip第四位用for循环出来
 
                start /B %~s0 %ip% %%i 
::注释:此句很难理解 意思是在原dos窗口内调用自身,并把%ip%作为第一个参数, %%i作为第二个参数。%~s0为文件本身的短文件名避免调用自身时出错 
)
 ~I         - 删除任何引号("),扩充 %I%~fI        - 将 %I 扩充到一个完全合格的路径名
 %~dI        - 仅将 %I 扩充到一个驱动器号
 %~pI        - 仅将 %I 扩充到一个路径
 %~nI        - 仅将 %I 扩充到一个文件名
 %~xI        - 仅将 %I 扩充到一个文件扩展名
 %~sI        - 扩充的路径只含有短名
 %~aI        - 将 %I 扩充到文件的文件属性
 %~tI        - 将 %I 扩充到文件的日期/时间
 %~zI        - 将 %I 扩充到文件的大小
 %~$PATH:I   - 查找列在路径环境变量的目录,并将 %I 扩充
 到找到的第一个完全合格的名称。如果环境变量名
 未被定义,或者没有找到文件,此组合键会扩充到
 
 Last edited by PPdos on 2008-4-2 at 07:33 AM ]
 
 
 
 
 |  
                  |  菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
 |  | 
|  2007-2-20 13:39 |  | 
|  | 
 
| yc421206 初级用户
 
   
 
 
 
 积分 52
 发帖 21
 注册 2006-1-4
 状态 离线
 | 
| 『第 7 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
Originally posted by yc421206 at 2007-2-20 02:08:
 小弟還是不明白此"%~s0",使用規格以及含意
 如試著將它移除,程式即出錯,請問是為什麼呢??
 
小弟瞭解了 
感謝兄您的指導 
 
 
 
 |  | 
|  2007-2-21 13:55 |  | 
|  | 
 
| Kinglion 铂金会员
 
        痴迷DOS者
 
 
 积分 5798
 发帖 1924
 注册 2003-6-20
 来自 金獅電腦軟體工作室
 状态 离线
 | 
| 『第 8 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
写得不错,很实用! 
 
 
 
 
 |  
                  |  熟能生巧,巧能生精,一艺不精,终生无成,精亦求精,始有所成,臻于完美,永无止境!
 金狮電腦軟體工作室愿竭诚为您服务!
 QQ群:8393170(定期清理不发言者)
 个人网站:http://www.520269.cn
 电子邮件:doujiehui@vip.qq.com
 微信公众号: doujiehui
 
 |  | 
|  2007-2-21 20:57 |  | 
|  | 
 
| lzmyst 新手上路
 
  
 
 
 
 积分 19
 发帖 10
 注册 2005-12-13
 状态 离线
 |  | 
|  2007-2-21 23:52 |  | 
|  | 
 
| vkill 金牌会员
 
       
 
 
 
 积分 4103
 发帖 1744
 注册 2006-1-20
 来自 甘肃.临泽
 状态 离线
 |  | 
|  2007-2-23 00:14 |  | 
|  | 
 
| peterdocter 中级用户
 
    
 
 
 积分 379
 发帖 95
 注册 2003-7-17
 状态 离线
 |  | 
|  2007-3-1 01:35 |  | 
|  | 
 
| dato 高级用户
 
     
 
 
 积分 916
 发帖 377
 注册 2004-3-8
 状态 离线
 |  | 
|  2007-3-1 23:12 |  | 
|  | 
 
| PPdos 高级用户
 
     
 
 
 积分 783
 发帖 268
 注册 2006-12-26
 状态 离线
 | 
| 『第 13 楼』:
 回复
 
使用 LLM 解释/回答一下 
 
 
13楼的问题在内存不足或IP段内在线主机过多确会发生 所以要在运行此程序前关闭其他应用程序 (正常情况下几十秒钟即可完成扫描) 14楼建议的arp可以在扫描过后直接运行 arp -a 命令来完成更为灵活 
 
 
 
 
 |  
                  |  菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
 |  | 
|  2007-3-4 05:19 |  | 
|  | 
 
| 574855721 初级用户
 
   
 
 
 
 积分 25
 发帖 13
 注册 2007-3-5
 状态 离线
 |  | 
|  2007-3-5 12:47 |  | 
|  | 
 
| zfkj 新手上路
 
  
 
 
 
 积分 4
 发帖 2
 注册 2007-3-5
 状态 离线
 |  | 
|  2007-3-5 18:18 |  |