#创作灵感#
写函数笔记时突然想到的一个美化函数,centos7正常情况/etc/init.d/mysql中可以找到。更新系统到centos9没有发现这个文件,为了以后使用方便,在这里把这个函数写下来,脚本没什么特殊,主要是用来保存美化函数。
脚本功能
要求:将url作为唯一参数传入,并判断连接状态
#!/bin/bash
# 定义 usage 函数,用于显示脚本的使用方法
function usage()
{
echo "USAGE: $0 url" # 显示脚本使用方法
exit 1 # 退出脚本,返回非零退出码表示出错
}
# 定义 log_success_msg 函数,用于美化成功信息的输出
function log_success_msg()
{
local GREEN='\033[0;32m' # 定义绿色颜色码
local NC='\033[0m' # 定义重置颜色码
local msg=$(printf "%-15s" " ") # 生成 15 个空格,用于缩进成功信息
echo -e "$1 ${msg}${GREEN}[SUCCESS]${NC}" # 输出成功信息,并使用绿色字体,加上中括号显示
}
# 定义 log_failure_msg 函数,用于美化失败信息的输出
function log_failure_msg()
{
local RED='\033[0;31m' # 定义红色颜色码
local NC='\033[0m' # 定义重置颜色码
local msg=$(printf "%-15s" " ")
echo -e "$1 ${msg}${RED}[FAILURE]${NC}" # 输出失败信息,并使用红色字体,加上中括号显示
}
# 定义 check_url 函数,用于检查指定的 URL 是否可达
function check_url()
{
# 使用 wget 命令进行 URL 连接测试
wget --spider -q -o /dev/null --tries=1 -T 5 $1
# 检查 wget 命令的退出状态码,0 表示成功,非零表示失败
if [ "$?" -eq 0 ]
then
log_success_msg "$1 状态正常" # 如果连接成功,则输出状态正常信息,调用 log_success_msg 函数
else
log_failure_msg "$1 连接失败" # 如果连接失败,则输出连接失败信息,调用 log_failure_msg 函数
fi
}
# 主函数,接收命令行参数并调用相应的函数
main()
{
# 检查命令行参数个数是否为 1,如果不是则显示使用方法并退出
if [ "$#" -ne 1 ]
then
usage
fi
# 调用 check_url 函数检查指定的 URL 是否可达
check_url $1
}
# 调用主函数,传入命令行参数
main $*