This commit is contained in:
Super Manito
2025-03-20 23:11:18 +08:00
parent a2f2527917
commit bbff27d128
2 changed files with 56 additions and 56 deletions

View File

@@ -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 # 恢复光标
}
##############################################################################

View File

@@ -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 "$@"