【博客701】shell实现保留网络现场:ping失败时执行mtr
shell实现保留网络现场:ping失败时执行mtr
场景
当我们网络出现抖动,到某个目的地ping不通时,我们想知道路径上哪里出现问题时可以在那时候执行mtr并保留下现场以供排查
实现:ping_and_mtr.sh
#!/bin/bash# 定义要ping的IP地址列表
ip_list=("192.168.1.1" "192.168.1.2" "192.168.1.3")# 设置结果文件名
result_file="mtr_results.txt"# 遍历IP列表,逐个进行ping和mtr测试
for ip in "${ip_list[@]}"; do# 尝试ping IP地址,如果成功则继续下一个ping -c 2 "$ip" > /dev/null 2>&1if [ $? -eq 0 ]; thenecho "$ip ping成功,跳过mtr"elseecho "$ip ping失败,执行mtr"# 保存mtr结果到文件echo "MTR测试结果: $ip" >> "$result_file"mtr -r "$ip" >> "$result_file"echo "---------------------" >> "$result_file"fi
done
设置一直运行:
打开终端,输入以下命令打开当前用户的 cron 配置文件:
crontab -e在文件末尾添加一行,设置定时任务。例如,每5分钟运行一次脚本:
*/5 * * * * /path/to/your/ping_and_mtr.sh
相关文章:
【博客701】shell实现保留网络现场:ping失败时执行mtr
shell实现保留网络现场:ping失败时执行mtr 场景 当我们网络出现抖动,到某个目的地ping不通时,我们想知道路径上哪里出现问题时可以在那时候执行mtr并保留下现场以供排查 实现:ping_and_mtr.sh #!/bin/bash# 定义要ping的IP地址列…...
放弃手写代码吧!用低代码你能生成各种源码
很多同学不知道为什么要用Low-code做开发,传统IT开发不行么?当然可以。 传统IT自研软件开发,通过编程去写代码,还有数据库、API、第三方基础架构等。这个方式很好,但不可避免的会带来开发周期长、难度大,技…...
什么程度才算精通 Linux?
前言 Linux 的优秀之处自然不必多说。 如果将操作系统比作一辆汽车,那 Linux 就是一辆性能出色的多功能越野车,上山下海飞天无所不能。 如果你拥有了它,一定不会只满足于驾驶它上下班,不能只会挂挡、踩油门和控制方向之类的基本…...
jmeter中的__setProperty用法
__setProperty 是一个用于设置 JMeter 属性的函数,基本语法: __setProperty(property, value)** property : 是要设置的属性的名称 ** value : 是要设置的属性的值在 JMeter中,可以使用 __setProperty 函数的元素: BeanShell …...
vue基础知识六:v-show和v-if有什么区别?使用场景分别是什么?
一、v-show与v-if的共同点 我们都知道在 vue 中 v-show 与 v-if 的作用效果是相同的(不含v-else),都能控制元素在页面是否显示 在用法上也是相同的 <Model v-show"isShow" /> <Model v-if"isShow" />当表达式为true的时候&#…...
SpringBoot几个常用的注解
(1)RestController和Controller指定一个类,作为控制器的注解 (2)RequestMapping方法级别的映射注解,这一个用过Spring MVC的小伙伴相信都很熟悉 (3)EnableAutoConfiguration和Spri…...
腾讯JAVA后端秋招面试总结
腾讯秋招的面经,岗位是 java 后端开发。 说一下BIO、NIO和AIO 答: BIO是阻塞IO。在上一个线程的任务执行完之前,该线程必须阻塞等待上一个线程执行完毕。 NIO是非阻塞IO。一旦是响应事件发生了,该线程就会将对应的响应事件交给对应的事件处理器进行处理。 AIO是异步IO。主…...
随着iPhone 15降临,是时候扔掉所有的Lightning充电器了
自从苹果推出Lightning端口(一直追溯到iPhone 5)十多年后,你可能已经积累了相当多的Lightning电缆和配件。好吧,在下周的苹果活动之前,所有关于iPhone 15的传言都表明你不再需要它们了。 与最好的iPad和最好的MacBook…...
huggingface 使用入门笔记
概念 Hugging Face Hub和 Github 类似,都是Hub(社区)。Hugging Face可以说的上是机器学习界的Github。Hugging Face为用户提供了以下主要功能: 模型仓库(Model Repository):Git仓库可以让你管理代码版本、…...
ASP.NET Core 中的 Razor Pages
Razor Pages Razor Pages 是基于页面的 ASP.NET Core Web App 架构。 相比 MVC 模式,Razor Pages的生产效率更快。 Razer Pages 需要两个中间件: builder…Services.AddRazorPages 添加 Razor Pages servicesapp.MapRazorPages 添加 Razor Pages endpo…...
C语言入门 Day_14 for循环
目录 1.for循环 2.循环执行顺序 3.易错点 4.思维导图 前言 我们定义了一个数组以后,要使用(读取或者修改)数组元素的话,可以一个一个的读取,就前两课学的那样,代码类似这个结构。 int …...
深入解析 Socks5 代理与网络安全
作为网络工程师和网络文章主编,我们时刻关注着网络世界中的新趋势和技术发展。本文将探讨 Socks5 代理、代理IP、网络安全以及与之相关的 HTTP 协议,为您呈现一个深入的技术洞察。 引言 在今天的互联网时代,网络安全是至关重要的话题。攻击…...
Vue + Element UI 前端篇(十二):用户管理模块
Vue Element UI 实现权限管理系统 前端篇(十二):用户管理模块 用户管理模块 添加接口 在 http/moduls/user.js 中添加用户管理相关接口。 import axios from ../axios/* * 用户管理模块*/// 保存 export const save (params) > {ret…...
C# 设计保存文件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System...
Leetcode 1486.数组异或操作
给你两个整数,n 和 start 。 数组 nums 定义为:nums[i] start 2*i(下标从 0 开始)且 n nums.length 。 请返回 nums 中所有元素按位异或(XOR)后得到的结果。 示例 1: 输入:n 5, …...
【Java】Java核心API概述
Java核心API是Java编程语言的基础,包含了Java应用程序中常用的类和接口。本文将介绍Java核心API中的一些重要部分,包括输入输出流、异常处理、集合框架、多线程和网络编程等。 1、输入输出流 Java的输入输出流API是Java IO,它提供了处理输入…...
微信小程序检查版本更新
新建文件 version-util.js // 小程序启动时检查版本 class VersionUtil {/*** 检查更新*/checkUpdate(){const updateManager wx.getUpdateManager();updateManager.onCheckForUpdate((hasUpdate)>{if(hasUpdate){updateManager.onUpdateReady(()>{wx.showModal({title…...
Linux查看是虚拟机还是物理机
第一种方式:dmesg命令 [roottest ~]# dmesg | grep -i hypervisor [ 0.000000] Hypervisor detected: VMware [ 0.001000] TSC freq read from hypervisor : 2903.999 MHz [ 6.311621] [drm] Max dedicated hypervisor surface memory is 0 kiB第二种方式…...
【数据结构】二叉搜索树——二叉搜索树的概念和介绍、二叉搜索树的简单实现、二叉搜索树的增删查改
文章目录 二叉搜索树1. 二叉搜索树的概念和介绍2. 二叉搜索树的简单实现2.1二叉搜索树的插入2.2二叉搜索树的查找2.3二叉搜索树的遍历2.4二叉搜索树的删除2.5完整代码和测试 二叉搜索树 1. 二叉搜索树的概念和介绍 二叉搜索树又称二叉排序树,它或者是一棵空树&…...
通过linux定时任务删除es日志索引
能过linux定时任务删除es日志索引 项目用上了elk,产生的日志索引要定时,其一个方法,通过linux定时任务,调用es接口删除索引。 #!/bin/bash #删除ELK30天前的日志 #计算索引名称包含的日期,比如这里是 %Y.%m.%d (2023…...
基于LLM的代码仓库智能分析:RepoMap-AI实现架构可视化与认知图谱
1. 项目概述:当AI成为你的代码库“活地图”最近在折腾一个老旧的Java项目,里面模块套模块,依赖关系复杂得像一团乱麻。想找个特定的工具类,得在十几个包里翻来覆去地搜;想理清某个核心服务的调用链路,光靠I…...
告别默认视图:5个CloudCompare点云可视化高级技巧(颜色映射、尺寸分级、OpenGL优化)
告别默认视图:5个CloudCompare点云可视化高级技巧(颜色映射、尺寸分级、OpenGL优化) 在三维点云处理领域,可视化效果直接影响数据分析的深度与决策效率。CloudCompare作为开源点云处理利器,其默认视图设置往往难以满足…...
Windows和Office激活难题?3分钟永久激活的智能方案
Windows和Office激活难题?3分钟永久激活的智能方案 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 还在为Windows系统频繁弹出激活提示而烦恼吗?Office文档突然变成只读模…...
开源阅读鸿蒙版:打造你的专属数字图书馆,重获阅读自由
开源阅读鸿蒙版:打造你的专属数字图书馆,重获阅读自由 【免费下载链接】legado-Harmony 开源阅读鸿蒙版仓库 项目地址: https://gitcode.com/gh_mirrors/le/legado-Harmony 你是否厌倦了在多个阅读应用间来回切换?是否对层出不穷的广告…...
别再手动算矩阵了!CloudCompare 2025版点云变换保姆级教程(齐次/欧拉/轴角一键搞定)
别再手动算矩阵了!CloudCompare 2025版点云变换保姆级教程(齐次/欧拉/轴角一键搞定) 点云数据处理中,最让人头疼的莫过于各种空间变换操作。传统方法需要手动计算变换矩阵,不仅容易出错,还耗费大量时间。Cl…...
电波流速仪
电波流速仪主打轻量化便携设计,适配单人独立作业。整机重量小于1kg,机身轻巧便携、握持舒适,长时间户外作业无负担。支持手持直接测量与标配三脚架固定测量两种模式,可灵活适配沟渠、河道、险滩、闸口等不同作业环境,既…...
从机房搬服务器到写代码上云:一个传统运维的十年转型路,我如何成了SRE?
从物理机到云原生:一位技术人的十年转型实战笔记 运维行业的变革速度远超许多人想象。十年前,我还在机房亲手插拔网线、用KVM切换器调试服务器;如今,我的日常工作已经变成了编写自动化部署脚本和设计分布式系统监控方案。这不是简…...
基于ARM嵌入式平台与AI视觉的输电线路智能巡检系统设计与实现
1. 项目概述:输电线路巡检的智能化转型 输电线路作为电力系统的“大动脉”,其安全稳定运行至关重要。传统的线路巡检主要依赖人工,巡检人员需要跋山涉水,通过望远镜、红外测温仪等设备进行观测和记录。这种方式不仅劳动强度大、效…...
Oto 核心架构深度解析:Context 与 Player 的设计哲学
Oto 核心架构深度解析:Context 与 Player 的设计哲学 【免费下载链接】oto ♪ A low-level library to play sound on multiple platforms ♪ 项目地址: https://gitcode.com/gh_mirrors/ot/oto Oto 是一个跨平台的低级音频播放库,其核心架构围绕…...
从‘KN’与‘taoN’反推Kp/Ki:一个让电机PI整定思路瞬间清晰的视角
从系统级特性反推PI参数:基于KN与taoN的电机控制整定方法论 在电机控制领域,PI参数整定一直是工程师面临的经典难题。传统方法往往直接调整Kp和Ki,却忽略了这两个参数背后隐藏的系统级特性——开环增益KN与微分时间常数taoN。这种"只见树…...
