diff --git a/bin/utils/base.sh b/bin/utils/base.sh index 77cdc74..7c0b94d 100644 --- a/bin/utils/base.sh +++ b/bin/utils/base.sh @@ -116,3 +116,25 @@ url_encode() { echo "$encoded" } + +# 动态安装软件包 +install_package() { + local package_name=$1 + if command -v "$package_name" &> /dev/null; then + echo "$package_name 已安装, 跳过." + return 0 + fi + + echo "安装 $package_name..." + package_manager=$(get_package_manager) + if [ "$package_manager" == "apt-get" ]; then + sudo apt-get update + sudo apt-get install -y "$package_name" + elif [ "$package_manager" == "yum" ]; then + sudo yum install -y "$package_name" + else + echo "未知的包管理器, 请手动安装 $package_name." + return 1 + fi +} +