feat(uninstall.sh): redesign static text menu

This commit is contained in:
sofia
2026-01-24 13:49:57 +08:00
parent a8f9aa4385
commit b93a63d94a
4 changed files with 293 additions and 273 deletions

View File

@@ -250,6 +250,7 @@ settings() {
;;
esac
separator_line "="
line_break
sleep 1
exit 0
;;

View File

@@ -13,7 +13,7 @@ fi
# 配置文件主界面
set_core_config() {
while true; do
common_tittle "\033[30;47m配置文件管理\033[0m"
format_box "\033[30;47m配置文件管理\033[0m"
[ -s "$CRASHDIR"/configs/providers.cfg ] || [ -s "$CRASHDIR"/configs/providers_uri.cfg ] && {
echo -e "\033[36m输入数字可管理对应提供者\033[0m"
cat "$CRASHDIR"/configs/providers.cfg "$CRASHDIR"/configs/providers_uri.cfg 2>/dev/null |
@@ -115,12 +115,18 @@ setproviders() {
case "$(echo "$line" | cut -d ' ' -f 2)" in
http* | ./providers*)
set -- $line
name=$1; link=$2; interval=$3; interval2=$4
ua=$5; exclude=$6; include=$7
name=$1
link=$2
interval=$3
interval2=$4
ua=$5
exclude=$6
include=$7
;;
*)
set -- $line
name=$1; link_uri=$2;
name=$1
link_uri=$2
;;
esac
[ -z "$interval" ] && interval=3
@@ -128,7 +134,7 @@ setproviders() {
[ -z "$ua" ] && ua='clash.meta'
while true; do
link_info=$(echo "$link$link_uri" | cut -c 1-30)
common_tittle "\033[36m支持添加订阅链接/分享链接/本地文件作为提供者\033[0m"
format_box "\033[36m支持添加订阅链接/分享链接/本地文件作为提供者\033[0m"
content_line "1) 设置\033[36m名称或代号\033[0m \033[32m$name\033[0m"
content_line "2) 设置\033[32m链接或路径\033[0m \033[36m$link_info...\033[0m"
[ -n "$link" ] && {
@@ -317,7 +323,7 @@ jump_core_config(){
if [ "$inuserguide" != 1 ]; then
read -p "是否启动服务以使配置文件生效?(1/0) > " res
[ "$res" = 1 ] && start_core || main_menu
exit;
exit
fi
fi
}

View File

@@ -1,4 +1,3 @@
error_report() {
line_break
separator_line "="
@@ -7,11 +6,13 @@ error_report() {
sleep 1
}
common_tittle() {
format_box() {
line_break
separator_line "="
content_line "$1"
separator_line "-"
for line in "$@"; do
content_line "$line"
done
separator_line "="
}
common_back() {

View File

@@ -3,7 +3,13 @@
# 卸载
uninstall() {
read -p "确认卸载ShellCrash(警告:该操作不可逆!)[1/0] > " res
format_box "\033[31m警告\033[0m" \
"\033[31m该操作不可逆\033" \
"是否确认卸载ShellCrash"
content_line "1) 是"
content_line "0) 否"
separator_line "="
read -r -p "$COMMON_INPUT> " res
if [ "$res" = '1' ]; then
# 停止服务
"$CRASHDIR"/start.sh stop 2>/dev/null
@@ -11,9 +17,14 @@ uninstall() {
"$CRASHDIR"/start.sh cronset "订阅链接" 2>/dev/null
"$CRASHDIR"/start.sh cronset "ShellCrash初始化" 2>/dev/null
"$CRASHDIR"/start.sh cronset "task.sh" 2>/dev/null
# 移除安装目录
if [ -n "$CRASHDIR" ] && [ "$CRASHDIR" != '/' ]; then
read -p "是否保留脚本配置及订阅文件[1/0] > " res
format_box "是否保留脚本配置及订阅文件"
content_line "1) 是"
content_line "0) 否"
separator_line "="
read -r -p "$COMMON_INPUT> " res
if [ "$res" = '1' ]; then
mv -f "$CRASHDIR"/configs /tmp/ShellCrash/configs_bak
mv -f "$CRASHDIR"/yamls /tmp/ShellCrash/yamls_bak
@@ -26,9 +37,9 @@ uninstall() {
rm -rf "$CRASHDIR"
fi
else
echo -e "\033[31m环境变量配置有误请尝试手动移除安装目录\033[0m"
sleep 1
error_report "\033[31m环境变量配置有误请尝试手动移除安装目录\033[0m"
fi
# 移除其他内容
sed -i "/alias $my_alias=*/"d /etc/profile 2>/dev/null
sed -i '/alias crash=*/'d /etc/profile 2>/dev/null
@@ -54,12 +65,13 @@ uninstall() {
userdel -r shellcrash 2>/dev/null
nvram set script_usbmount="" 2>/dev/null
nvram commit 2>/dev/null
echo "-----------------------------------------------"
echo -e "\033[36m已卸载ShellCrash相关文件有缘再会\033[0m"
echo -e "\033[33m请手动关闭当前窗口以重置环境变量\033[0m"
echo "-----------------------------------------------"
exit
format_box "\033[36m已卸载ShellCrash相关文件有缘再会\033[0m" \
"\033[33m请手动关闭当前窗口以重置环境变量\033[0m"
line_break
sleep 1
exit 0
else
echo -e "\033[31m操作已取消\033[0m"
format_box "\033[31m操作已取消\033[0m"
sleep 1
fi
}