From 117adb1ff1d0780547e17f5b0405363f1e43ca5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AF=BB=E8=A7=85?= Date: Wed, 24 Jan 2024 00:03:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E5=AE=89=E8=A3=85.zsh=20?= =?UTF-8?q?=E7=9A=84=E6=9E=B6=E6=9E=84=E8=AF=86=E5=88=AB=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 安装.zsh | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 58 insertions(+), 5 deletions(-) diff --git a/安装.zsh b/安装.zsh index 736dc5a..f1d2d15 100644 --- a/安装.zsh +++ b/安装.zsh @@ -20,9 +20,13 @@ readonly 安装_通用_包=('wget' 'curl' 'git' 'vim') readonly CPU_架构="$(uname -m)" readonly 系统_类型="$(uname -s)" readonly 系统_版本="$(uname -r)" -readonly 系统_发行版=$(echo "${ID}") +# ID_LIKE不为空,则输出ID_LIKE的值,否则输出ID的值 +readonly 系统_发行版=$( ([ -n "${ID_LIKE}" ] && echo "${ID_LIKE}") || ([ -n "${ID}" ] && echo "${ID}")) readonly 系统_发行版_名称=$(echo "${NAME}") +# 龙架构区分新旧世界的标志位 +世界_类型="新世界" + ############################################################################### # 终端配色 # ############################################################################### @@ -69,18 +73,67 @@ readonly 色彩=( # 函数/方法 # ############################################################################### -主机配置输出(){ +检查_架构() { + case ${CPU_架构} in + *x86_64*) + 主机_架构="amd64" + ;; + *loong*) + 主机_架构="龙" + ;; + *) + 输出 1 "暂不支持${色彩[3]} ${CPU_架构} ${色彩重置}架构" + exit 1 + ;; + esac + 输出 2 "检测到${色彩[5]} ${主机_架构} ${色彩重置}架构" +} + +检查_发行版() { + 未知=0 + case ${系统_发行版} in +# *arch*) ;; + *Loongnix*);; + *openwrt*) + 输出 1 "暂不支持openwrt" + exit 1 + ;; + *) + 未知=1 + ;; + esac + 输出 2 "检测到 ${系统_发行版_名称} (${系统_发行版}) 系统" + if [[ ${未知} == 1 ]]; then + 输出 3 "此发行版尚未被验证,是否继续尝试安装(请谨慎安装)" + select 是否 in "[是] Yes" "[否] No"; do + case ${是否} in [yY][eE][sS] | [yY] | [是]) + 输出 2 "发行版检查已忽略" + break + ;; + [nN][oO] | [nN] | [否]) + 输出 1 "已退出安装" + exit 1 + ;; + esac + done < /dev/tty # < /dev/tty 用于从终端读取输入信息 + fi +} + +输出_主机配置(){ echo " *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* * 欢迎使用 寻觅 配置脚本 * *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* " - 输出 2 "检测到主机信息如下:" - + 输出 2 "主机信息检测模块启动" + 检查_架构 + 检查_发行版 + 输出 0 "主机信息检测完毕" } + ############################################################################### # 入口(main) # ############################################################################### -主机配置输出 +输出_主机配置