diff --git a/bin/utils/base.sh b/bin/utils/base.sh new file mode 100644 index 0000000..51c7dfd --- /dev/null +++ b/bin/utils/base.sh @@ -0,0 +1,44 @@ +#!/bin/bash + +red(){ + echo -e "\033[31m$1\033[0m" +} + + +# 获取系统包管理器 +get_package_manager(){ + if command -v apt-get &> /dev/null; then + echo "apt-get" + elif command -v yum &> /dev/null; then + echo "yum" + else + echo "未知的系统包管理器" + return 1 # 返回错误状态码 + fi +} + +# 检查 jq 是否已安装 +check_jq(){ + if command -v jq &> /dev/null; then + return 0 # jq 已安装,返回成功 + fi + + echo "jq 未安装,正在安装..." + + package_manager=$(get_package_manager) # 获取包管理器 + if [[ -z "$package_manager" ]]; then + echo "无法识别系统包管理器" + return 1 # 无法识别包管理器 + fi + + if [[ "$package_manager" == "apt-get" ]]; then + sudo apt-get install -y jq + elif [[ "$package_manager" == "yum" ]]; then + sudo yum install -y jq + else + echo "未知的系统包管理器" + return 1 # 未知的包管理器 + fi +} + +