mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-11 16:01:28 +00:00
76 lines
2.9 KiB
Bash
76 lines
2.9 KiB
Bash
#!/bin/sh
|
|
# Copyright (C) Juewuy
|
|
|
|
load_lang uninstall
|
|
|
|
# 卸载
|
|
uninstall() {
|
|
comp_box "\033[31m$UNINSTALL_WARN\033[0m" \
|
|
"$UNINSTALL_CONFIRM"
|
|
btm_box "1) $UNINSTALL_YES" \
|
|
"0) $UNINSTALL_NO"
|
|
read -r -p "$COMMON_INPUT> " res
|
|
if [ "$res" = '1' ]; then
|
|
# 停止服务
|
|
"$CRASHDIR"/start.sh stop 2>/dev/null
|
|
"$CRASHDIR"/start.sh cronset "$UNINSTALL_CRON_CLASH" 2>/dev/null
|
|
"$CRASHDIR"/start.sh cronset "$UNINSTALL_CRON_SUB" 2>/dev/null
|
|
"$CRASHDIR"/start.sh cronset "$UNINSTALL_CRON_INIT" 2>/dev/null
|
|
"$CRASHDIR"/start.sh cronset "task.sh" 2>/dev/null
|
|
|
|
# 移除安装目录
|
|
if [ -n "$CRASHDIR" ] && [ "$CRASHDIR" != '/' ]; then
|
|
comp_box "$UNINSTALL_KEEP_CONFIRM"
|
|
btm_box "1) $UNINSTALL_YES" \
|
|
"0) $UNINSTALL_NO"
|
|
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
|
|
mv -f "$CRASHDIR"/jsons /tmp/ShellCrash/jsons_bak
|
|
rm -rf "$CRASHDIR"/*
|
|
mv -f /tmp/ShellCrash/configs_bak "$CRASHDIR"/configs
|
|
mv -f /tmp/ShellCrash/yamls_bak "$CRASHDIR"/yamls
|
|
mv -f /tmp/ShellCrash/jsons_bak "$CRASHDIR"/jsons
|
|
else
|
|
rm -rf "$CRASHDIR"
|
|
fi
|
|
else
|
|
msg_alert "\033[31m$UNINSTALL_ENV_ERROR\033[0m"
|
|
fi
|
|
|
|
# 移除其他内容
|
|
sed -i "/alias $my_alias=*/"d /etc/profile 2>/dev/null
|
|
sed -i '/alias crash=*/'d /etc/profile 2>/dev/null
|
|
sed -i '/export CRASHDIR=*/'d /etc/profile 2>/dev/null
|
|
sed -i '/export crashdir=*/'d /etc/profile 2>/dev/null
|
|
[ -w ~/.zshrc ] && {
|
|
sed -i "/alias $my_alias=*/"d ~/.zshrc 2>/dev/null
|
|
sed -i '/export CRASHDIR=*/'d ~/.zshrc 2>/dev/null
|
|
}
|
|
sed -i '/all_proxy/'d /etc/profile 2>/dev/null
|
|
sed -i '/ALL_PROXY/'d /etc/profile 2>/dev/null
|
|
sed -i "/$UNINSTALL_SSH_MARK/d" /etc/firewall.user 2>/dev/null
|
|
sed -i "/$UNINSTALL_CRON_INIT/d" /etc/storage/started_script.sh 2>/dev/null
|
|
sed -i "/$UNINSTALL_CRON_INIT/d" /jffs/.asusrouter 2>/dev/null
|
|
[ "$BINDIR" != "$CRASHDIR" ] && rm -rf "$BINDIR"
|
|
rm -rf /etc/init.d/shellcrash
|
|
rm -rf /etc/systemd/system/shellcrash.service
|
|
rm -rf /usr/lib/systemd/system/shellcrash.service
|
|
rm -rf /www/clash
|
|
rm -rf /tmp/ShellCrash
|
|
rm -rf /usr/bin/crash
|
|
sed -i '/0:7890/d' /etc/passwd 2>/dev/null
|
|
userdel -r shellcrash 2>/dev/null
|
|
nvram set script_usbmount="" 2>/dev/null
|
|
nvram commit 2>/dev/null
|
|
comp_box "\033[36m$UNINSTALL_DONE\033[0m" \
|
|
"\033[33m$UNINSTALL_CLOSE_HINT\033[0m"
|
|
line_break
|
|
sleep 1
|
|
exit 0
|
|
else
|
|
msg_alert "\033[31m$UNINSTALL_CANCELED\033[0m"
|
|
fi
|
|
}
|