shell_52.Linux测试与其他网络主机的连通性脚本
实战演练
本节将展示一个实用脚本,该脚本在处理用户输入的同时,使用 ping 命令或 ping6 命令来测试与其他网络主机的连通性。
ping 命令或 ping6 命令可以快速测试网络主机是否可用。这个命令很有用,经常作为首选工具。如果只是检查单个主机,那么直接使用该命令即可。
但是如果有数个甚至数百个主机需要检查,则 shell 脚本可以助你一臂之力。
这个脚本通过两种方法来选择要检查的主机:一是使用命令行选项,二是使用文件。下面是
该脚本在 Ubuntu 系统中使用命令行选项的用法演示:
$ ./CheckSystems.sh -t IPv4 192.168.1.102 192.168.1.104
Checking system at 192.168.1.102...
[...]
--- 192.168.1.102 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss,[...]
Checking system at 192.168.1.104...
[...]
--- 192.168.1.104 ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss,[...]
$
如果没有指定 IP 地址参数,则脚本会提示用户并退出:
$ ./CheckSystems.sh -t IPv4
IP Address(es) parameters are missing.
Exiting script...
$$ cat CheckSystems.sh
#!/bin/bash
# Check systems on local network allowing for
# a variety of input methods.
#
#
########### Determine Input Method ###################
#
# Check for command-line options here using getopts.
# If none, then go on to File Input Method
#
while getopts t: opt
do case "$opt" in t) # Found the -t option if [ $OPTARG = "IPv4" ] then pingcommand=$(which ping) #elif [ $OPTARG = "IPv6" ] then pingcommand=$(which ping6) # else echo "Usage: -t IPv4 or -t IPv6" echo "Exiting script..." exit fi ;; *) echo "Usage: -t IPv4 or -t IPv6" echo "Exiting script..." exit;; esac # shift $[ $OPTIND - 1 ] # if [ $# -eq 0 ] then echo echo "IP Address(es) parameters are missing." echo echo "Exiting script..." exit fi # for ipaddress in "$@" do echo echo "Checking system at $ipaddress..." echo $pingcommand -q -c 3 $ipaddress echo done exit
done
#
########### File Input Method ###################
#
echo
echo "Please enter the file name with an absolute directory reference..."
echo
choice=0
while [ $choice -eq 0 ]
do read -t 60 -p "Enter name of file: " filename if [ -z $filename ] then quitanswer="" read -t 10 -n 1 -p "Quit script [Y/n]? " quitanswer #case $quitanswer in Y | y) echo echo "Quitting script..." exit;; N | n) echo echo "Please answer question: " choice=0;; *) echo echo "No response. Quitting script..." exit;; esac else choice=1 fi
done
#
if [ -s $filename ] && [ -r $filename ]
then echo "$filename is a file, is readable, and is not empty." echo cat $filename | while read line do ipaddress=$line read line iptype=$line if [ $iptype = "IPv4" ] then pingcommand=$(which ping) else pingcommand=$(which ping6) fi echo "Checking system at $ipaddress..." $pingcommand -q -c 3 $ipaddress echo done echo "Finished processing the file. All systems checked."
else echo echo "$filename is either not a file, is empty, or is" echo "not readable by you. Exiting script..."
fi
#
#################### Exit Script #####################
#
exit
$
相关文章:
shell_52.Linux测试与其他网络主机的连通性脚本
实战演练 本节将展示一个实用脚本,该脚本在处理用户输入的同时,使用 ping 命令或 ping6 命令来测试与其他网络主机的连通性。 ping 命令或 ping6 命令可以快速测试网络主机是否可用。这个命令很有用,经常作为首选工具。如果只是检查单个主机&…...
OpenCV C++ 图像处理实战 ——《缺陷检测》
OpenCV C++ 图像处理实战 ——《缺陷检测》 一、结果演示二、缺陷检测算法2.1、多元模板图像2.2、训练差异模型三、图像配准3.1 功能源码3.1 功能效果四、多元模板图像4.1 功能源码五、缺陷检测5.1 功能源码六、源码测试图像下载总结一、结果演示...
Python操作MySQL基础使用
Python操作MySQL基础使用 链接数据库并查询数据 import pymysql# 链接数据库 conn pymysql.connect(host10.5.6.250,port3306,userroot,password******** )# 查看MySQL版本信息 print(conn.get_server_info()) # 5.5.27# 获取到游标对象 cursor conn.cursor()# 选择数据库…...
【pytorch】pytorch中的高级索引
这里只介绍pytorch的高级索引,是一些奇怪的切片索引 基本版 a[[0, 2], [1, 2]] 等价 a[0, 1] 和 a[2, 2],相当于索引张量的第一行的第二列和第三行的第三列元素; a[[1, 0, 2], [0]] 等价 a[1, 0] 和 a[0, 0] 和 a[2, 0],相当于索…...
基于图像识别的自动驾驶汽车障碍物检测与避障算法研究
基于图像识别的自动驾驶汽车障碍物检测与避障算法研究是一个涉及计算机视觉、机器学习、人工智能和自动控制等多个领域的复杂问题。以下是对这个问题的研究内容和方向的一些概述。 障碍物检测 障碍物检测是自动驾驶汽车避障算法的核心部分,它需要从车辆的感知数据…...
Spring boot定时任务
目录 前言一、使用 Scheduled 注解二、使用 ScheduledExecutorService三、使用 Spring 的 TaskScheduler四、使用第三方调度框架 前言 在 Spring Boot 中,有多种方法来编写定时任务,以执行周期性或延迟执行的任务。下面是几种常见的方式 一、使用 Sche…...
Glide原理
本文基于Carson整理 1.简介 相比其他几种图片加载框架,Glide性能最好。这得益于其高效的图片缓存策略 其还有多样化的媒体格式加载:如GIF、Video,对于商城首页需展示丰富样式、信息的页面需求来说,也是必不可少的。 2.加载原理…...
wps表格按分隔符拆分单元格
有数据如下;看选中区域,一个单元格中有一个v,空格,然后有三个数值,以空格分开;点击菜单中的数据-分列; 弹出分列向导;选择 分隔符号; 选择分隔符为空格;出现预…...
【SEC 学习】Vim 的基本使用
一、Vim 编辑器安装 yum install -y vim二、Vim 三种模式 命令模式 编辑模式 末行模式 三、三种模式之间的转换 1. 命令模式 -> 编辑模式 快捷键含义i从光标处插入I从光标所在行首插入a从光标后插入A从光标所在行末插入o从光标下一行插入O从光标上一行插入 2. 命令模式 …...
Linux中shell脚本练习
目录 1.猜数字 2.批量创建用户 3.监控网卡Receive Transmit 数据的变化 4.部署Linux 5.系统性能检测脚本 6.分区脚本 7.数据库脚本 1.猜数字 随机数的生成 使用环境变量RANDOM,范围是0~32767 编写guest.sh,实现以下功能࿱…...
AS/400简介
AS400 AS400 简介AS/400操作系统演示 AS400 简介 在 AS400 中,AS代表“应用系统”。它是多用户、多任务和非常安全的系统,因此用于需要同时存储和处理敏感数据的行业。它最适合中级行业,因此用于制药行业、银行、商场、医院管理、制造业、分销…...
FreeRTOS 中断管理介绍和实操
目录 中断定义 中断优先级 相关注意 中断相关函数 1.队列 2.信号量 3.事件标志组 4.任务通知 5.软件定时器 中断管理实操 中断定义 中断是指在程序执行的过程中,突然发生了某种事件,需要立即停止当前正在执行的程序,并转而处理这个…...
性能测试 —— Jmeter 常用三种定时器!
1、同步定时器 位置:HTTP请求->定时器->Synchronizing Timer 当需要进行大量用户的并发测试时,为了让用户能真正的同时执行,添加同步定时器,用户阻塞线程,知道线程数达到预先配置的数值,才开始执行…...
ROS自学笔记十七:Arbotix
ArbotiX 是一个基于 ROS(Robot Operating System)的机器人控制系统,它旨在为小型机器人提供硬件控制和传感器接口,以便于机器人的运动和感知。以下是有关 ROS 中 ArbotiX 的简介和安装步骤: ArbotiX 简介 ArbotiX 主…...
Mac电脑窗口管理Magnet中文 for mac
Magnet是一款Mac窗口管理工具,它可以帮助用户轻松管理打开的窗口,提高多任务处理效率。以下是Magnet的一些主要特点和功能: 分屏模式支持:Magnet支持多种分屏模式,包括左/右/顶部/底部 1/2 分屏、左/中/右 1/3 分屏、…...
Centos7 部署 Stable Diffusion
参考:https://www.jianshu.com/p/ff81bb76158a 遇到的问题: 1、git clone 比较慢 解决办法:设置代理 https://blog.csdn.net/dszgf5717/article/details/130735389 2、pip install 比较慢 解决办法:更换源或设置代理 https:/…...
【Python】一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格
题目要求:一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格 例:(为了方便观看,以 ▢ 代替空格) 输入:123▢▢abc▢▢▢python 输出:123▢abc▢python 参考…...
嵌入式项目电灯
1、原理,电灯有个正负极,当正确接入电源正负极就能点亮(如正极5v,负极0v),单两边同时接入正极,就不会亮(两端都是5v),所以通过控制电平,来实现控制led等的亮暗 cpu通过给…...
[ubuntu系统下的文本编辑器nano,vim,gedit,文件使用,以及版本更新问题]
文本编辑器概要 在Ubuntu系统下,有许多文本编辑器可供选择,每个编辑器都有其独特的特性和用途。以下是一些常见的文本编辑器: Gedit: 这是Ubuntu默认的文本编辑器,它简单易用,适合基本的文本编辑任务。 安…...
C#WinformListView实现缺陷图片浏览器
C#&Winform&ListView实现缺陷图片浏览器 功能需求图像浏览行间距调整悬浮提示 功能需求 机器视觉检测系统中特别是缺陷检测系统,通常需要进行对已经检出的缺陷图片进行浏览查阅。主要是通过条件筛选查询出所需要的数据,进行分页再展示到界面中。…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用
1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计
随着大语言模型(LLM)参数规模的增长,推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长,而KV缓存的内存消耗可能高达数十GB(例如Llama2-7B处理100K token时需50GB内存&a…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
jmeter聚合报告中参数详解
sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample(样本数) 表示测试中发送的请求数量,即测试执行了多少次请求。 单位,以个或者次数表示。 示例:…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...
ubuntu22.04 安装docker 和docker-compose
首先你要确保没有docker环境或者使用命令删掉docker sudo apt-get remove docker docker-engine docker.io containerd runc安装docker 更新软件环境 sudo apt update sudo apt upgrade下载docker依赖和GPG 密钥 # 依赖 apt-get install ca-certificates curl gnupg lsb-rel…...
