位置: 编程技术 - 正文

Shell脚本实现自动检测修改最快的Ubuntu软件源(shell脚本实现自动化巡检报警发送邮箱)

编辑:rootadmin

推荐整理分享Shell脚本实现自动检测修改最快的Ubuntu软件源(shell脚本实现自动化巡检报警发送邮箱),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:shell脚本自动化,shell 自动执行脚本,shell脚本实现自动部署,shell脚本自动化,shell脚本实现自动部署,shell脚本自动化,shell脚本实现自动部署,shell脚本实现自动截图,内容如对您有帮助,希望把文章链接给更多的朋友!

每次装好Ubuntu,对于大多数用户来说,首先要做的事就是手动修改/etc/apt/sources.list文件,将里面的官方软件源地址更换为自己学校或者公司的软件源。当我们更换一个工作环境后,可能伴随着又要替换旧的软件源地址。

笔者觉得这样每次手动更改软件源是一件及其麻烦重复的劳动,于是编写了一个自动更新最快软件源的脚本,从此一劳永逸。

原理

最直观的想法就是:对各个软件源进行测速,选出最快的那个,之后将其替换为新的软件源。

那么如何对各个软件源测速呢?有两种方法:

一、用ping命令 测量其平均响应时间 选出响应时间最短的那个

二、用wget命令 测量下载一个文件的总时间 选出耗时最少的那个

那么这两种方法有什么区别呢?我们该用哪个呢?

前者选出的是响应时间最优的,后者选出的是下载速度最快的。我们都知道软件源的作用是供客户端下载更新软件,所以当然是后者的方法更为准确,但笔者最终选择了前者作为测速方案,因为前者的用户体验更好且代码简单易懂。设想,如果我们采用后者,那么需要从每个软件源下载一个文件,并且这个文件不能太小,否则无法区分他们的速度,那么一个显而易见的情况是脚本需要运行较长的时间。

虽然存在某些软件源可能响应时间很短,而下载速度却很慢的情况,但经过笔者的多次实验,发现这样的情况并不常见。

实现

首先测试用户网络状态

利用

Shell脚本实现自动检测修改最快的Ubuntu软件源(shell脚本实现自动化巡检报警发送邮箱)

取出其平均响应时间 如果speed == “” 则说明网络不通,提示用户,且退出程序。 否则,说明网络正常,继续执行。

检测软件源列表文件是否存在

若不存在,提示用户,且退出程序。

对每个软件源地址进行测速

在测速之前清空上次运行的测速结果文件,之后将每个软件源的测速结果(源地址 平均响应时间)写入测速结果文件

对测速结果进行排序

对每行记录 按照平均响应时间升序排列

选出最快的软件源

通过取已排序列表中的第一条,选出最快的软件源

询问用户是否要使用该软件源

用户确认后,先对用户之前的软件源进行备份,然后再替换。

getfastmirror.sh脚本源代码:

sources_mirrors.list源码:

让Linux下的cron以秒为单位执行shell脚本的3种方法 需要用到Shell脚本每隔3秒钟去监控一个软件进程的运行状态,发现crond似乎只支持到分,不知道秒,怎么办呢?第一种方法:当然首先想到的是写一个触

Linux下统计当前文件夹下的文件个数、目录个数 1)统计当前文件夹下文件的个数ls-l|grep"^-"|wc-l2)统计当前文件夹下目录的个数ls-l|grep"^d"|wc-l3)统计当前文件夹下文件的个数,包括子文件夹里的ls-lR|grep"^-"

写出健壮Bash Shell脚本的一些技巧总结 许多人用Shell脚本完成一些简单任务,而且变成了他们生命的一部分。不幸的是,shell脚本在运行异常时会受到非常大的影响。在写脚本时将这类问题最

标签: shell脚本实现自动化巡检报警发送邮箱

本文链接地址:https://www.jiuchutong.com/biancheng/379811.html 转载请保留说明!

上一篇:Bash Shell 注释多行的几种方法(shell中的注释用什么表示)

下一篇:让Linux下的cron以秒为单位执行shell脚本的3种方法(linux中crontab)

  • 我国现行的增值税属于什么
  • 以前年度多计收入多交税怎么处理
  • 企业所得税包含哪些税种
  • 收据盖公章要注意哪些
  • 纳税申报 财务报表利润表
  • 已出库未开票未收款会计分录
  • 房地产公司的利润怎么分析
  • 资本公积账务处理案例
  • 冲销暂估材料怎么做账
  • 小微企业增值税免税政策2023年
  • 代扣代缴的增值税怎么做账
  • 有票据的福利费是不需要职工薪酬科目过渡吗
  • 个体工商户该如何交税
  • 异地承包工程预缴什么税?
  • 房地产企业暂估成本
  • 当月增次月是什么意思
  • 汇算清缴时费用占收入多少
  • 税盘显示已过开票截止日期
  • 一般纳税人所得税优惠政策
  • 电梯按几年摊销
  • 对于不需要交强险的人
  • 母子公司合并报表什么时候做
  • 未担保余值是什么意思
  • 年初未交增值税借方怎么处理
  • 出口退免税的类型
  • 当月作废的发票是否需要报税
  • 企业出租商铺交什么税费呢
  • 香港公司可以给个人打款吗
  • 年初未分配利润是什么科目
  • 在window10中可以使用什么窗口
  • 预缴企业所得税怎么做账务处理
  • wifi密码忘记了怎么重新设置密码
  • Windows 2003 SP2 简体中文版下载地址
  • 职工教育经费超过可以结转以后年度怎么做账
  • 低值易耗品的三级科目有哪些
  • 工程物资发生报废损毁
  • Vue3 & app.use 与 install 函数的作用
  • 税法中一年按多少天算
  • Vue3+TypeScript+Vite如何使用require动态引入类似于图片等静态资源
  • typescript类型别名
  • 进口货物财务处理
  • 固定资产类别有哪些
  • 中药饮片盘点误差范围
  • 织梦官方网站
  • 耕地占用税通过税金及附加核算吗
  • 给员工发放礼品的祝福
  • 未确认融资费用摊销额怎么计算
  • 企业主营业务利润是由什么构成的
  • mysql存储过程语句
  • 蔬菜批发成本怎么核算
  • 公司开业前期费用谁出
  • 现金日记账怎么记账
  • 汇兑损益的账务处
  • 质量有问题不给退怎么办
  • 发票盖发票专用章
  • sql常用语句大全简书
  • sql修改表增加列
  • mysql中json格式是多少长度
  • mysql怎么把列变成行
  • win7蓝屏咋办
  • 解决磁盘被写保护的方法
  • win7 64位系统提示"Windows7不能识别网络打印机"的故障原因及解决方法
  • magento开发教程
  • linux常用配置
  • 怎么在手机上买股票开户
  • win8如何安装
  • cocos怎么用
  • srslte源码分析
  • jquery插件是干什么的
  • 梦见擦窗户框
  • jqgrid动态增加列
  • 批处理获取本地连接名称
  • python中面向对象的概念
  • android中启动service的方法有
  • python中time模块源代码
  • django 接收前端的json
  • python 系统日期
  • unity动画教程
  • python约瑟夫问题最高效算法
  • 个体户需要报个税的综合所得吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设