批次档检查IP格式正确性

自行制作有关网路 IP 的批次档交给使用者时,常常发生在者输人时总是会与我们想的不一样,不是多个.号或是输入非数字等,造成批次档出现意料外的状况.
一直在找一个可以在命令中检查 IP 格式是否正确的批次内容,但找到的不是多少有些缺陷就是写法不够精简,为了这个问题思考好一段时间,想到一个较完美的又精简的写法分享给大家.
检查範围 0.0.0.0-255.255.255.255。

@Echo OffSet /p IP=请输入要检查的IP位置: For /f "delims=^. tokens=1-4" %%i in ('Echo %IP: =%^|Findstr /V "\<[0][0-9] \.[0\.][0-9] [^0-9\.] [0-9]*\.[0-9]*\.[0-9]*\.[0-9]*\. ^[0-9]*\.*[0-9]*\.*[0-9]*\.*$"') Do (    Set /A Reutrn="(%%i>>8)|(%%j>>8)|(%%k>>8)|(%%l>>8)"    Set IP=%%i.%%j.%%k.%%l)If "%Reutrn%" EQU "0" (Echo IP 位置正确:%IP%) Else (Echo IP 位置不正确:%IP%)Pause

经测测试应该没问题了,若发现问题还请指教以便完善。


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章