当前位置: 首页 > news >正文

shell编程——查找局域网内存活主机

题目要求:写一个shell脚本,探测局域网内存活主机

首先,我们的思路是在循环中不断ping主机,然后根据ping的结果来判断主机是否存活

本题中ping语句如下:

ping -c 3 -i 0.3 -W 1 192.168.1.1

解释一下参数:-c 3代表发送3个icmp包

-i 0.3代表发包时间间隔

-W 1代表等待超时的时间为1

然后我们需要将上面的结果重定向到一个变量中,这里给大家讲一个很特殊的重定向

 ping -c 3 -i 0.3 -W 1 192.168.1.1 &> /dev/null

/dev/null是一个“黑洞”,用于将输入丢弃

&> 表示同时重定向标准输出和标准错误输出

这是有一个特殊的变量:?,?的值为0或1,分别代表不可达/可达

接下来就是写到循环中,并判断?的值

整体代码如下:

#!/bin/bash
for i in `seq 254`
do#执行 pingping -c 3 -i 0.3 -W 1 192.168.1.$i &> /dev/null#判断主机是否存活if [ $? == 0 ];thenecho "192.168.1.$i is up!"elseecho "192.168.1.$i is down!"fi
done
http://www.lryc.cn/news/272987.html

相关文章:

  • python django 个人记账管理系统
  • C#的Char 结构的方法之IsLetterOrDigit()
  • 配置Docker私有仓库
  • 计算机网络-动态路由
  • 光耀未来 第一届能源电子产业创新大赛太阳能光伏赛道决赛在宜宾举行
  • 【小沐学NLP】Python实现TF-IDF算法(nltk、sklearn、jieba)
  • .cer格式证书文件和 .pfx格式证书文件有什么区别?
  • 【docker实战】安装tomcat并连接mysql数据库
  • LeetCode 每日一题 Day 32 ||递归单调栈
  • 【mars3d】FixedRoute的circle没有跟polyline贴着模型的解决方案
  • Day7 vitest 之 vitest配置第三版
  • git补充上次提交
  • 计算机网络名词解释
  • flink table view datastream互转
  • redis重启后数据丢失问题解决(亲测好用)
  • 敬请期待……
  • 3.10 Android eBPF HelloWorld调试(四)
  • PyTorch常用工具(1)数据处理
  • docker-简单说说cgroup
  • 印象笔记04: 如何将印象笔记超级会员价值最大化利用?
  • 我的JDK动态代理流程
  • uniapp Vue3 面包屑导航 带动态样式
  • openGauss学习笔记-174 openGauss 数据库运维-备份与恢复-导入数据-管理并发写入操作
  • 数据分析可被划分为4个重要的类别
  • 爆火小游戏敲木鱼流量主小程序源码系统+完整的代码包以及安装搭建教程
  • Invoke和BeginInvoke的区别
  • 3 分钟为英语学习神器 Anki 部署一个专属同步服务器
  • <HarmonyOS第一课>应用程序框架
  • SQL 解析 — 如何轻松实现新增语句
  • Android集成OpenSSL实现加解密-集成