百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

分享一个实用脚本——URL检测,值得收藏

liuian 2024-12-14 13:33 25 浏览

概述

上一次脚本没发出来,这次补上..

顺便分享一个URL检测脚本,仅供参考。


上一次查看磁盘使用TOP 10的脚本

#!/bin/bash
#===============================================================================
# copyright by hwb
# date:2020-11-3
# USAGE: ./find_disk_usage.sh <directory> 
# 用途: 根据指定目录,查找出目录下占用空间最大的top 10目录和文件
#===============================================================================

#传参
bk_directory="/"
top_n=10

#调用函数库
[ -f /etc/init.d/functions ] && source /etc/init.d/functions
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
source /etc/profile

#Require root to run this script.
[ $(id -u) -gt 0 ] && echo "请用root用户执行此脚本!" && exit 1



#用第一个参数指定服务器目录
if [ -n "$1" ];then
   bk_directory=$1
   #判断目录是否存在,防止当路径不存在时rm -rf /*之类问题发生
   [ -d $bk_directory ] || echo "服务器目录[$bk_directory]不存在,请检查输入参数!"
   [ -d $bk_directory ] || exit 1
fi


function find_disk_usage(){
  echo ""
  echo -e "\033[33m************************File or directory [$bk_directory] disk usage top${top_n}************************\033[0m"
  temp_file=$( mktemp )
  
  if [ $bk_directory = "/" ];then
     bk_directory=""
  fi
    
  
  #开始统计文件大小
  top_count=1
  while read usage_m file_path
  do
	[[ -f $file_path ]] && file_type="File"||file_type="Directory"
	#fmt -w 80命令会将echo输出的整行数据根据其命令选项指定的宽度(120个字符)进行折行显示,再将折行后的数据以多行的形式传递给sed命令。 
    #sed在收到fmt命令的格式化输出后,将会在折行后的第一行头部添加两个空格,在其余行的头部添加一个加号和一个空格以表示差别。 
	echo -e "\e[1;32m Top.${top_count} ${usage_m}(MB)   ${file_type}   $file_path \e[1;32m" | fmt -w 120 | sed -e '1s/^/  /' -e '2,$s/^/+ /'
	top_count=$((top_count+1))
  done <<< "$( du -am ${bk_directory}/* 2>$temp_file|sort -nr|head -${top_n} )"
  
  #打印没有权限日志
  if [[ -s $temp_file ]];then
	cu_user=$( id|awk '{print $1}' )
	echo ""
	echo -e "\033[33m*************************用户 $cu_user没有以下文件/目录权限************************\033[0m"
	cat $temp_file
  fi
  
  #删除临时文件
  [[ -f $temp_file ]] && rm -f $temp_file
  echo ""
  echo -e "\033[33m*************************File or directory  disk usage Over!**************************\033[0m"
}


find_disk_usage

URL检测脚本

#!/bin/bash
#===============================================================================
# copyright by hwb
# date:2020-11-4
# USAGE: ./get_url_status.sh <url>
# 用途: 使用curl检测url,输出相关指标
#===============================================================================

#传参
url="https://xxxx"
date=`date +"%Y-%m-%d-%H:%M:%S"`

#调用函数库
[ -f /etc/init.d/functions ] && source /etc/init.d/functions
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
source /etc/profile

#Require root to run this script.
[ $(id -u) -gt 0 ] && echo "请用root用户执行此脚本!" && exit 1


#用第一个参数指定服务器目录
if [ -n "$1" ];then
   url=$1
fi


function get_url_status(){
  echo ""
  echo -e "\033[33m*************************检测URL状态:${url}*************************\033[0m"
  echo ""
  echo -e "\033[36m Usage: $0 需检测URL地址[默认为https://xxxx]  \033[0m"
  echo ""
  #测试URL
  echo "[${date}] >>> curl测试访问[${url}]的统计数据如下:"
curl -L -w '
HTTP返回码:\t%{http_code}
返回内容大小:\t%{size_download}
重定向次数:\t%{num_redirects}
域名解析时长:\t%{time_namelookup}
建立链接时长:\t%{time_connect}
开始传输时长:\t%{time_starttransfer}
总时长:\t%{time_total}
' -o /dev/null -s "${url}"

  wget --spider -q -o /dev/null --tries=1 -T 5 ${url} 
  if [  $? -eq 0 ] ;then
     echo ""
     echo -e "\033[32m 服务器访问[${url}]地址测试正常! \033[0m" 
  else
     echo ""
     echo -e "\033[31m 服务器访问[${url}]地址测试异常! \033[0m"
  fi
  echo -e "\033[33m*********************完成${url}地址检测*****************************\033[0m"
  echo ""
}


get_url_status



执行结果




后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下!


相关推荐

RazorSQL Mac版(SQL数据库查询工具)

RazorSQLMac特别版是一款看似简单实则功能非常出色的SQL数据库查询、编辑、浏览和管理工具。RazorSQLformac特别版可以帮你管理多个数据库,支持主流的30多种数据库,包括Ca...

史上最强!开源数据库管理工具DBeaver 24.2发布

DBeaverCommunity是一个免费的跨平台数据库工具,面向开发人员、数据库管理员、分析师和所有使用数据的人员。它支持所有流行的SQL数据库,如MySQL、MariaDB、PostgreSQL...

10个优秀的MySQL管理工具,都是大佬们的珍藏

Mysql开源、体积小、速度快、成本低、安全性高,目前在全球中小型网站中被广泛应用。今天给大家介绍10个优秀的MySQL管理工具,都是大佬们的珍藏,对你有用的话,可以收藏转发。1、Induction...

Mac电脑如何安装向量数据库Milvus

Milvus是一个高性能、高度可扩展的矢量数据库,可在从笔记本电脑到大规模分布式系统的各种环境中高效运行。Milvus提供强大的数据建模功能,使您能够将非结构化或多模态数据组织成结构化集合。Mil...

干掉 PowerDesigner!这款国人开源的数据库设计工具真香

当我们在项目开发初期时,往往需要设计大量的表,此时使用数据库设计工具就会比较高效!今天给大家推荐一款国人开源的数据库设计工具chiner,界面漂亮,功能强大,希望对大家有所帮助!聊聊PowerDesi...

数据库管理工具推荐!SQL Studio:免费、高效,歪...

随着国际环境的变化,越来越多的企业基于供应链安全的需求。信息技术的飞速发展,数据库管理工具的需求也越来越迫切。然而,在众多软件中,要找到一款得心应手的数据库管理工具并不容易。今天,我向大家推荐一款功能...

Mac密码安全管理工具----Enpass(mac密码管理在哪里)

Enpassmac版是一款适用于macOS用户的密码安全管理工具,使用Enpass,你无需再为记住太多的密码和其他重要凭据而头疼了。Enpass把你的密码存放在一个安全的地方,然后通过一个主密码随时...

超实用的14款MySQL数据库管理工具

MySQL是当前流行的数据库引擎之一,具有成本低、速度快、体积小且开放源代码的优点。今天就给大家分享14款MySQL数据库管理工具。1.MySQLDumper这款软件的应用,有效解决使用PHP进行大数...

神器收藏:macOS最强工具清单,16.6k+星 awesome-macOS

神器收藏:macOS最强工具清单,16.6k+星标必看引言在macOS生态中,有一个备受瞩目的神仓库,汇集了最全面、最实用的macOS应用和工具清单。这个项目在GitHub上已获得超过16.6k的...

JetBrains DataGrip Mac中文破解版V2025.1下载安装教程

DataGripforMac是由JetBrains开发的数据库集成开发环境(IDE),专为数据库管理员和开发人员设计。它支持多种数据库(如MySQL、PostgreSQL、Oracle、SQ...

GIS坐标参考系统:EPSG、WKT和PROJ

在之前的教程中,我们介绍了什么是坐标参考系统(CRS)、坐标参考系统的组成部分以及投影坐标参考系统和地理坐标参考系统之间的一般差异。在这个教程中,我们将介绍CRS信息的不同存储方式。推荐:用...

【地理信息可视化】basemap(cartopy)+geopandas显示地图-03

importwarningswarnings.filterwarnings('ignore')importosimportnumpyasnpfromscipy....

字符识别之PaddleOcr介绍、安装与应用

paddleocr介绍paddleocr是一款轻量型字符识别工具库,支持多语言识别,支持pip安装与自定义训练。详细信息如下表所示。名称许可证当前版本下载地址(github地址)支持语言运行方式pi...

111.Python——基于pipenv打包PaddlePaddle的GUI项目

飞桨PaddlePaddle是百度的深度学习框架,用来做一些项目还是非常不错。但是打包就是一件非常麻烦的过程。在文中有讲过打包问题。29.Python程序打包成可执行文件——常见疑难问题解决办法。本文...

Shamos算法:一种在平面上找到最远点的方法

旋转卡尺算法简介Shamos算法,也叫旋转卡尺(Rotatingcalipers)算法,是一种用于解决计算几何问题的优化算法。它可以用来解决许多几何问题,包括计算点集的宽度或直径。算法的名称来源于其...