永发信息网

如何用批处理写一段判断语句

答案:5  悬赏:70  手机版
解决时间 2021-02-10 18:05
判断的对象是PING自己的IP.如果不通,写入一个文本做记录.如果通,不进行任何操作.
最佳答案
@echo off
ping -n 1 192.168.0.1| find "Request timed out" && goto timeout
pause
exit

:timeout
echo ip地址无法ping通>ping.log
pause
exit

将以上文字存成myping.bat就可以了
如果你想执行一个带参数的bat的话

@echo off
ping -n 1 %1| find "Request timed out" && goto timeout
pause
exit

:timeout
echo ip地址无法ping通>ping.log
pause
exit

将以上文字存成myping2.bat
在myping2文件所在目录里执行
myping2 ip地址即可
如果ping不通,则将“ip地址无法ping通”写入ping.log文件中。
全部回答
暂时不会在批处理中检查PING的结果。。
批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为bat。 1、 rem rem 是个注释命令一般是用来给程序加上注解的,该命令后的内容在程序执行的时候将不会被显示和执行。例: rem 你现在看到的就是注解,这一句将不会被执行。在以后的例子中解释的内容都rem 会放在rem后面。请大家注意。 2、 echo echo 是一个回显命令主要参数有off和 on,一般用echo message来显示一个特定的消息 。例: echo off rem 以上代表关闭回显即不显示所执行的命令 echo 这个就是消息。 rem 以上代表显示“这就是消息”这列字符 执行结果: c:\>echo.bat 这个就是消息。 3、 goto goto 即为跳转的意思。在批处理中允许以“:xxx”来构建一个标号然后用goto :标号直接来执行标号后的命令。例 :label rem 上面就是名为label的标号。 dir c:\ dir d:\ goto label rem 以上程序跳转标号label处继续执行。 4、call call 命令可以在批处理执行过程中调用另一个批处理,当另一个批处理执行完后再继续执行原来的批处理。例: 批处理2.bat内容如下: echo 这就是2的内容 批处理1.bat内容如下: echo 这是1的内容 call 2.bat echo 1和2的内容全部显示完成 执行结果如下: c:\>1.bat 这是1的内容 这就是2的内容 1和2的内容全部显示完成 5、pause pause 停止系统命令的执行并显示下面的内容。例: c:\> pause 请按任意键继续 . . . 6、 if if 条件判断语句,语法格式如下: if [not] errorlevel number command if [not] string1==string2 command if [not] exist filename command 说明: [not] 将返回的结果取反值即“如果没有”的意思。 errorlevel 是命令执行完成后返回的退出值 number 退出值的数字取值范围0~255。判断时值的排列顺序应该又大到小。返回的值大于或等于指定的值时条件成立。 string1==string2 string1和string2都为字符的数据,英文字符的大小写将看做不同,这个条件中的等于号必须是2个(绝对相等),条件想等后即执行后面的 command exist filename 为文件或目录存在的意思。 if errorlevel这条语句必须放在某一个命令后面。执行命令后由if errorlevel来判断命令的返回值。
@echo off rem 关闭回显 for /f "tokens=15" %%i in ('ipconfig ^| find /i "ip address"') do set ip=%%i rem 获取本机IP for /f "delims=" %%i in ('ping %ip%') do ( for %%a in (%%i) do ( if %%a==timed (goto error)) ) rem ping本机ip,对获取到的结果逐项判断,如果有"timed"的出现,说明发生了"Request timed out",视为失败,转到error,否则转到exit goto exit :error echo %date% %time% 获取到的IP为%ip%,Ping发生错误>>error.txt rem 输出错误信息到error.txt :exit 代码结束,运行时可以把rem注释删掉,以免出错,测试成功的.
批处理也得对结构进行判断,其步骤是:对了自己的IP好像总能ping通 先用命令 ping IP >C:\11.txt 然后对11.txt进行字符串判断 如果找到"Request timed out."说明没ping 通把文件删除 没找到就保留文件 这样吧 ping IP>C:\11.txt For /F "delims=" %%l In (C:\11.txt) Do( set a = %%l set b =Request timed echo %a%|findstr %b%)>nul&&start"" del C:\11.txt 没运行!不知道对不对,自己改改吧 原理就是这样
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
当你很爱一个人的时候,突然有一天你要面临他
什么手机可以玩nba2k2014
兴盛驾校报名处怎么去啊,有知道地址的么
打字复印社用什么样的复印机及经济又实惠啊,
【野牛单车】短跑运动员在5s内跑了45m自行车
四川外语学院成都学院我想知道这个在什么地方
我有个紫砂壶,落款是大生,上面刻字是石雪,是
西梁村地址在什么地方,想过去办事
宋晓峰文松小品邮轮风云啦啦啦是什么歌
吃韭菜为什么出好多汗?每次都是。
三口李家怎么去啊,有知道地址的么
financial outcome是什么意思
形容女婴可爱的英语要用上such
请告诉我这个批处理命令为什么写成.bat文件就
金蝶提示定义的应用程序或对象错误-kisebcglv
推荐资讯
想去哥斯达黎加个人旅游,怎样才能办到签证?
放射自显影的基本原理是()。
生活的真谛,不在于你索取多少,而在于你能给
给对方打电话,先有一段铃声,然后就您好,你
马三餐厅这个地址在什么地方,我要处理点事
谁有solidworks 扭力弹簧的画法
台式电脑,晚上好好的,是正常关机。第二天早
保康县瑞康核桃专业合作社地址在哪,我要去那
浴足馆在哪里啊,我有事要去这个地方
where is my pen?I can't find it
小狗在垫子上转圈还叫
厦门到西安有没有长途客车,如果有,多长时间
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?