diff --git a/安装.zsh b/安装.zsh new file mode 100644 index 0000000..736dc5a --- /dev/null +++ b/安装.zsh @@ -0,0 +1,86 @@ +#!/usr/bin/zsh + +# 将终端的输出重置为默认设置,并且不会换行(用于重置终端的字体颜色、背景色和文本样式等设置) +echo -e "\e[0m\c" + +export PATH=/usr/sbin:$PATH +# 让apt包管理器处于非交互模式运行 +export DEBIAN_FRONTEND=noninteractive +# 加载系统配置 +source /etc/os-release +# 脚本在执行过程中遇到任何非零返回码的命令时立即退出 +set -e + +############################################################################### +# 全局变量 # +############################################################################### + +readonly 安装_通用_包=('wget' 'curl' 'git' 'vim') + +readonly CPU_架构="$(uname -m)" +readonly 系统_类型="$(uname -s)" +readonly 系统_版本="$(uname -r)" +readonly 系统_发行版=$(echo "${ID}") +readonly 系统_发行版_名称=$(echo "${NAME}") + +############################################################################### +# 终端配色 # +############################################################################### + +# 色彩配置 +readonly 色彩重置='\e[0m' +readonly 色彩=( + '\e[38;5;154m' # 0: 亮绿 + '\e[1m' # 1: 白 + '\e[90m' # 2: 灰 + '\e[91m' # 3: 红 + '\e[32m' # 4: 绿 + '\e[33m' # 5: 黄 +) + +# 用于规范输出的工具 +# 位置参数 1 -> 整数 <- 1: 成功(亮绿); 2: 失败(红色); 3: 信息(绿色); 4: 通知(黄色) +# 位置参数 2 -> 字符 <- 在命令行输出的字符串 +# 实例 `输出 0 "执行成功"`; `输出 3 "请及时更新依赖"` +输出() { + if (($1 == 0)); then + echo -e "${色彩[2]}[${色彩重置}${色彩[0]} 成功 ${色彩重置}${色彩[2]}]${色彩重置} $2" + elif (($1 == 1)); then + echo -e "${色彩[2]}[${色彩重置}${色彩[3]} 失败 ${色彩重置}${色彩[2]}]${色彩重置} $2" + exit 1 + elif (($1 == 2)); then + echo -e "${色彩[2]}[${色彩重置}${色彩[4]} 信息 ${色彩重置}${色彩[2]}]${色彩重置} $2" + elif (($1 == 3)); then + echo -e "${色彩[2]}[${色彩重置}${色彩[5]} 通知 ${色彩重置}${色彩[2]}]${色彩重置} $2" + fi +} + +# 灰色信息(处理一些无关紧要的信息, 调用后在没有清除颜色之前会一直使用灰色输出) +色彩_灰色() { + echo -e "${色彩[2]}\c" +} + +# 清除颜色(一般和灰色信息连用) +色彩_清除() { + echo -e "${色彩重置}\c" +} + +############################################################################### +# 函数/方法 # +############################################################################### + +主机配置输出(){ + echo " + *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* + * 欢迎使用 寻觅 配置脚本 * + *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-* + " + 输出 2 "检测到主机信息如下:" + +} + +############################################################################### +# 入口(main) # +############################################################################### + +主机配置输出