From bbff27d1283a894b34d1b342e86a1424f2956e31 Mon Sep 17 00:00:00 2001 From: Super Manito <68613938+SuperManito@users.noreply.github.com> Date: Thu, 20 Mar 2025 23:11:18 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ChangeMirrors.sh | 56 +++++++++++++++++++++---------------------- DockerInstallation.sh | 56 +++++++++++++++++++++---------------------- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/ChangeMirrors.sh b/ChangeMirrors.sh index 29297bd..809b9c2 100755 --- a/ChangeMirrors.sh +++ b/ChangeMirrors.sh @@ -244,7 +244,7 @@ WARN="\033[1;43m 警告 ${PLAIN}" ERROR="\033[1;31m✘${PLAIN}" FAIL="\033[1;31m✘${PLAIN}" TIP="\033[1;44m 提示 ${PLAIN}" -WORKING="\033[1;36m>_${PLAIN}" +WORKING="\033[1;36m◉${PLAIN}" function main() { permission_judgment @@ -618,7 +618,7 @@ function run_start() { } function run_end() { - echo -e "\n✨️ \033[1;34mPowered by https://linuxmirrors.cn\033[0m\n" + echo -e "\n✨️ \033[3;1mPowered by \033[34mhttps://linuxmirrors.cn\033[0m\n" } ## 报错退出 @@ -1619,7 +1619,7 @@ function change_mirrors_main() { print_diff fi ## 更新软件源 - echo -e "\n$WORKING 开始${SYNC_MIRROR_TEXT}...\n" + echo -e "\n$WORKING ${SYNC_MIRROR_TEXT}...\n" case "${SYSTEM_FACTIONS}" in "${SYSTEM_DEBIAN}" | "${SYSTEM_OPENKYLIN}") apt-get update @@ -2546,25 +2546,25 @@ function interactive_select_mirror() { unset options[${#options[@]}-1] local selected=0 local start=0 - local page_size=$(($(tput lines) - 3)) # 减去1行用于显示提示信息 + local page_size=$(($(tput lines 2>/dev/null) - 3)) # 减去3行用于显示提示信息 function clear_menu() { - tput rc + tput rc 2>/dev/null for ((i = 0; i < ${#options[@]} + 1; i++)); do echo -e "\r\033[K" done - tput rc + tput rc 2>/dev/null } function cleanup() { clear_menu - tput rc - tput cnorm - tput rmcup - echo -e "\n${TIP} ${RED}操作已取消${PLAIN}\n" + tput rc 2>/dev/null + tput cnorm 2>/dev/null + tput rmcup 2>/dev/null + echo -e "\n\033[1;44m 提示 \033[0m \033[31m操作已取消\033[0m\n" exit 130 } function draw_menu() { - tput clear - tput cup 0 0 + tput clear 2>/dev/null + tput cup 0 0 2>/dev/null echo -e "${message}" local end=$((start + page_size - 1)) if [ $end -ge ${#options[@]} ]; then @@ -2586,9 +2586,9 @@ function interactive_select_mirror() { fi echo "$key" } - tput smcup # 保存当前屏幕并切换到新屏幕 - tput sc # 保存光标位置 - tput civis # 隐藏光标 + tput smcup 2>/dev/null # 保存当前屏幕并切换到新屏幕 + tput sc 2>/dev/null # 保存光标位置 + tput civis 2>/dev/null # 隐藏光标 trap "cleanup" INT TERM # 捕捉脚本结束时恢复光标 draw_menu # 初始化菜单位置 # 处理选择 @@ -2623,9 +2623,9 @@ function interactive_select_mirror() { draw_menu done # clear_menu # 清除菜单 - tput cnorm # 恢复光标 - tput rmcup # 恢复之前的屏幕 - # tput rc # 恢复光标位置 + tput cnorm 2>/dev/null # 恢复光标 + tput rmcup 2>/dev/null # 恢复之前的屏幕 + # tput rc 2>/dev/null # 恢复光标位置 # 处理结果 _SELECT_RESULT="${options[$selected]}" } @@ -2638,19 +2638,19 @@ function interactive_select_boolean() { local original_line function store_position() { # 保存菜单开始前的行位置 - original_line=$(tput lines) + original_line=$(tput lines 2>/dev/null) } function clear_menu() { # 向上移动到菜单开始位置并清除菜单 for ((i = 0; i < ${menu_height}; i++)); do - tput cuu1 # 光标上移一行 - tput el # 清除当前行 + tput cuu1 2>/dev/null # 光标上移一行 + tput el 2>/dev/null # 清除当前行 done } function cleanup() { clear_menu - tput cnorm - echo -e "\n${TIP} ${RED}操作已取消${PLAIN}\n" + tput cnorm 2>/dev/null + echo -e "\n\033[1;44m 提示 \033[0m \033[31m操作已取消\033[0m\n" exit 130 } function draw_menu() { @@ -2658,9 +2658,9 @@ function interactive_select_boolean() { echo -e "╭─ ${message}" echo -e "│" if [ "$selected" -eq 0 ]; then - echo -e "╰─ \033[32m●\033[0m 是\033[2m / ○ 否\033[0m" + echo -e "╰─ \033[34m●\033[0m 是\033[2m / ○ 否\033[0m" else - echo -e "╰─ \033[2m○ 是 / \033[0m\033[32m●\033[0m 否" + echo -e "╰─ \033[2m○ 是 / \033[0m\033[34m●\033[0m 否" fi } @@ -2672,8 +2672,8 @@ function interactive_select_boolean() { fi echo "$key" } - tput civis # 隐藏光标 - store_position # 记录当前位置 + tput civis 2>/dev/null # 隐藏光标 + store_position # 记录当前位置 trap "cleanup" INT TERM draw_menu # 初始化菜单位置 # 处理选择 @@ -2713,7 +2713,7 @@ function interactive_select_boolean() { echo -e "╰─ \033[2m○ 是 / \033[0m\033[32m●\033[0m \033[1m否\033[0m" _SELECT_RESULT="false" fi - tput cnorm # 恢复光标 + tput cnorm 2>/dev/null # 恢复光标 } ############################################################################## diff --git a/DockerInstallation.sh b/DockerInstallation.sh index 2d3fb54..49200b2 100755 --- a/DockerInstallation.sh +++ b/DockerInstallation.sh @@ -120,7 +120,7 @@ WARN="\033[1;43m 警告 ${PLAIN}" ERROR="\033[1;31m✘${PLAIN}" FAIL="\033[1;31m✘${PLAIN}" TIP="\033[1;44m 提示 ${PLAIN}" -WORKING="\033[1;36m>_${PLAIN}" +WORKING="\033[1;36m◉${PLAIN}" function main() { permission_judgment @@ -322,7 +322,7 @@ function run_start() { ## 运行结束 function run_end() { - echo -e "\n✨️ \033[1;34mPowered by https://linuxmirrors.cn\033[0m\n" + echo -e "\n✨️ \033[3;1mPowered by \033[34mhttps://linuxmirrors.cn\033[0m\n" # echo -e "\n ------ 脚本运行结束 ------" # echo -e ' \033[0;1;35;95m┌─\033[0;1;31;91m──\033[0;1;33;93m──\033[0;1;32;92m──\033[0;1;36;96m──\033[0;1;34;94m──\033[0;1;35;95m──\033[0;1;31;91m──\033[0;1;33;93m──\033[0;1;32;92m──\033[0;1;36;96m──\033[0;1;34;94m──\033[0;1;35;95m──\033[0;1;31;91m──\033[0;1;33;93m──\033[0;1;32;92m──\033[0;1;36;96m┐\033[0m' # echo -e ' \033[0;1;31;91m│▞\033[0;1;33;93m▀▖\033[0m \033[0;1;32;92m▙▗\033[0;1;36;96m▌\033[0m \033[0;1;31;91m▗\033[0;1;33;93m▐\033[0m \033[0;1;34;94m│\033[0m' @@ -718,7 +718,7 @@ function install_dependency_packages() { rm -rf $Dir_YumRepos/*docker*.repo ;; esac - echo -e "\n$WORKING 开始${SYNC_MIRROR_TEXT}...\n" + echo -e "\n$WORKING ${SYNC_MIRROR_TEXT}...\n" case "${SYSTEM_FACTIONS}" in "${SYSTEM_DEBIAN}") package_manager="apt-get" @@ -1098,25 +1098,25 @@ function interactive_select_mirror() { unset options[${#options[@]}-1] local selected=0 local start=0 - local page_size=$(($(tput lines) - 3)) # 减去1行用于显示提示信息 + local page_size=$(($(tput lines 2>/dev/null) - 3)) # 减去3行用于显示提示信息 function clear_menu() { - tput rc + tput rc 2>/dev/null for ((i = 0; i < ${#options[@]} + 1; i++)); do echo -e "\r\033[K" done - tput rc + tput rc 2>/dev/null } function cleanup() { clear_menu - tput rc - tput cnorm - tput rmcup - echo -e "\n${TIP} ${RED}操作已取消${PLAIN}\n" + tput rc 2>/dev/null + tput cnorm 2>/dev/null + tput rmcup 2>/dev/null + echo -e "\n\033[1;44m 提示 \033[0m \033[31m操作已取消\033[0m\n" exit 130 } function draw_menu() { - tput clear - tput cup 0 0 + tput clear 2>/dev/null + tput cup 0 0 2>/dev/null echo -e "${message}" local end=$((start + page_size - 1)) if [ $end -ge ${#options[@]} ]; then @@ -1138,9 +1138,9 @@ function interactive_select_mirror() { fi echo "$key" } - tput smcup # 保存当前屏幕并切换到新屏幕 - tput sc # 保存光标位置 - tput civis # 隐藏光标 + tput smcup 2>/dev/null # 保存当前屏幕并切换到新屏幕 + tput sc 2>/dev/null # 保存光标位置 + tput civis 2>/dev/null # 隐藏光标 trap "cleanup" INT TERM # 捕捉脚本结束时恢复光标 draw_menu # 初始化菜单位置 # 处理选择 @@ -1175,9 +1175,9 @@ function interactive_select_mirror() { draw_menu done # clear_menu # 清除菜单 - tput cnorm # 恢复光标 - tput rmcup # 恢复之前的屏幕 - # tput rc # 恢复光标位置 + tput cnorm 2>/dev/null # 恢复光标 + tput rmcup 2>/dev/null # 恢复之前的屏幕 + # tput rc 2>/dev/null # 恢复光标位置 # 处理结果 _SELECT_RESULT="${options[$selected]}" } @@ -1190,19 +1190,19 @@ function interactive_select_boolean() { local original_line function store_position() { # 保存菜单开始前的行位置 - original_line=$(tput lines) + original_line=$(tput lines 2>/dev/null) } function clear_menu() { # 向上移动到菜单开始位置并清除菜单 for ((i = 0; i < ${menu_height}; i++)); do - tput cuu1 # 光标上移一行 - tput el # 清除当前行 + tput cuu1 2>/dev/null # 光标上移一行 + tput el 2>/dev/null # 清除当前行 done } function cleanup() { clear_menu - tput cnorm - echo -e "\n${TIP} ${RED}操作已取消${PLAIN}\n" + tput cnorm 2>/dev/null + echo -e "\n\033[1;44m 提示 \033[0m \033[31m操作已取消\033[0m\n" exit 130 } function draw_menu() { @@ -1210,9 +1210,9 @@ function interactive_select_boolean() { echo -e "╭─ ${message}" echo -e "│" if [ "$selected" -eq 0 ]; then - echo -e "╰─ \033[32m●\033[0m 是\033[2m / ○ 否\033[0m" + echo -e "╰─ \033[34m●\033[0m 是\033[2m / ○ 否\033[0m" else - echo -e "╰─ \033[2m○ 是 / \033[0m\033[32m●\033[0m 否" + echo -e "╰─ \033[2m○ 是 / \033[0m\033[34m●\033[0m 否" fi } @@ -1224,8 +1224,8 @@ function interactive_select_boolean() { fi echo "$key" } - tput civis # 隐藏光标 - store_position # 记录当前位置 + tput civis 2>/dev/null # 隐藏光标 + store_position # 记录当前位置 trap "cleanup" INT TERM draw_menu # 初始化菜单位置 # 处理选择 @@ -1265,7 +1265,7 @@ function interactive_select_boolean() { echo -e "╰─ \033[2m○ 是 / \033[0m\033[32m●\033[0m \033[1m否\033[0m" _SELECT_RESULT="false" fi - tput cnorm # 恢复光标 + tput cnorm 2>/dev/null # 恢复光标 } handle_command_options "$@"