mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-13 00:41:20 +00:00
refactor(set_core_config_link): replace recursion with while loop
This commit is contained in:
@@ -988,45 +988,48 @@ gen_core_config_link(){ #在线生成工具
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
set_core_config_link(){ #直接导入配置
|
|
||||||
echo "-----------------------------------------------"
|
# 直接导入配置
|
||||||
echo -e "\033[32m仅限导入完整的配置文件链接!!!\033[0m"
|
set_core_config_link() {
|
||||||
echo "-----------------------------------------------"
|
while true; do
|
||||||
echo -e "注意:\033[31m此功能不兼容“跳过证书验证”功能,部分老旧\n设备可能出现x509报错导致节点不通\033[0m"
|
echo "-----------------------------------------------"
|
||||||
echo -e "你也可以搭配在线订阅转换网站或者自建SubStore使用"
|
echo -e "\033[32m仅限导入完整的配置文件链接!!!\033[0m"
|
||||||
echo "$crashcore" | grep -q 'singbox' &&echo -e "singbox内核建议使用\033[32;4mhttps://subv.jwsc.eu.org/\033[0m转换"
|
echo "-----------------------------------------------"
|
||||||
echo "-----------------------------------------------"
|
echo -e "注意:\033[31m此功能不兼容“跳过证书验证”功能,部分老旧\n设备可能出现x509报错导致节点不通\033[0m"
|
||||||
echo -e "\033[33m0 返回上级菜单\033[0m"
|
echo -e "你也可以搭配在线订阅转换网站或者自建SubStore使用"
|
||||||
echo "-----------------------------------------------"
|
echo "$crashcore" | grep -q 'singbox' && echo -e "singbox内核建议使用\033[32;4mhttps://subv.jwsc.eu.org/\033[0m转换"
|
||||||
read -p "请输入完整链接 > " link
|
echo "-----------------------------------------------"
|
||||||
test=$(echo $link | grep -iE "tp.*://" )
|
echo -e "\033[33m0 返回上级菜单\033[0m"
|
||||||
link=`echo ${link/\ \(*\)/''}` #删除恶心的超链接内容
|
echo "-----------------------------------------------"
|
||||||
link=`echo ${link//\&/\\\&}` #处理分隔符
|
read -p "请输入完整链接 > " link
|
||||||
if [ -n "$link" -a -n "$test" ];then
|
test=$(echo $link | grep -iE "tp.*://")
|
||||||
echo "-----------------------------------------------"
|
link=$(echo ${link/\ \(*\)/''}) # 删除恶心的超链接内容
|
||||||
echo -e 请检查输入的链接是否正确:
|
link=$(echo ${link//\&/\\&}) # 处理分隔符
|
||||||
echo -e "\033[4;32m$link\033[0m"
|
if [ -n "$link" -a -n "$test" ]; then
|
||||||
read -p "确认导入配置文件?原配置文件将被备份![1/0] > " res
|
echo "-----------------------------------------------"
|
||||||
if [ "$res" = '1' ]; then
|
echo -e "请检查输入的链接是否正确:"
|
||||||
#将用户链接写入配置
|
echo -e "\033[4;32m$link\033[0m"
|
||||||
Url=''
|
read -p "确认导入配置文件?原配置文件将被备份![1/0] > " res
|
||||||
Https="$link"
|
if [ "$res" = '1' ]; then
|
||||||
setconfig Https "'$Https'"
|
# 将用户链接写入配置
|
||||||
setconfig Url
|
Url=''
|
||||||
#获取在线yaml文件
|
Https="$link"
|
||||||
jump_core_config
|
setconfig Https "'$Https'"
|
||||||
else
|
setconfig Url
|
||||||
set_core_config_link
|
# 获取在线yaml文件
|
||||||
fi
|
jump_core_config
|
||||||
elif [ "$link" = 0 ];then
|
break
|
||||||
i=
|
fi
|
||||||
else
|
elif [ "$link" = 0 ]; then
|
||||||
echo "-----------------------------------------------"
|
i=
|
||||||
echo -e "\033[31m请输入正确的配置文件链接地址!!!\033[0m"
|
break
|
||||||
echo -e "\033[33m仅支持http、https、ftp以及ftps链接!\033[0m"
|
else
|
||||||
sleep 1
|
echo "-----------------------------------------------"
|
||||||
set_core_config_link
|
echo -e "\033[31m请输入正确的配置文件链接地址!!!\033[0m"
|
||||||
fi
|
echo -e "\033[33m仅支持http、https、ftp以及ftps链接!\033[0m"
|
||||||
|
sleep 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
# 配置文件主界面
|
# 配置文件主界面
|
||||||
|
|||||||
Reference in New Issue
Block a user