shell实战脚本--URL连通性+美化函数

#创作灵感#

写函数笔记时突然想到的一个美化函数,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 $*

脚本效果

  • 21
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值