mirror of
https://github.com/juewuy/ShellCrash.git
synced 2026-03-13 17:01:38 +00:00
refactor(task_manager): replace recursion with while loop
This commit is contained in:
@@ -211,7 +211,10 @@ task_type(){ #任务条件选择菜单
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
task_manager(){ #任务管理列表
|
|
||||||
|
# 任务管理列表
|
||||||
|
task_manager() {
|
||||||
|
while true; do
|
||||||
echo "-----------------------------------------------"
|
echo "-----------------------------------------------"
|
||||||
# 抽取并生成临时列表
|
# 抽取并生成临时列表
|
||||||
croncmd -l >"$TMPDIR"/task_cronlist
|
croncmd -l >"$TMPDIR"/task_cronlist
|
||||||
@@ -224,6 +227,7 @@ task_manager(){ #任务管理列表
|
|||||||
if [ ! -s "$TMPDIR"/task_list ]; then
|
if [ ! -s "$TMPDIR"/task_list ]; then
|
||||||
echo -e "\033[31m当前没有可供管理的任务!\033[36m"
|
echo -e "\033[31m当前没有可供管理的任务!\033[36m"
|
||||||
sleep 1
|
sleep 1
|
||||||
|
break
|
||||||
else
|
else
|
||||||
echo -e "\033[33m已添加的任务:\033[0m"
|
echo -e "\033[33m已添加的任务:\033[0m"
|
||||||
echo "-----------------------------------------------"
|
echo "-----------------------------------------------"
|
||||||
@@ -234,20 +238,22 @@ task_manager(){ #任务管理列表
|
|||||||
echo -e " 0 返回上级菜单"
|
echo -e " 0 返回上级菜单"
|
||||||
read -p "请输入对应数字 > " num
|
read -p "请输入对应数字 > " num
|
||||||
case "$num" in
|
case "$num" in
|
||||||
0)
|
"" | 0)
|
||||||
|
break
|
||||||
;;
|
;;
|
||||||
a)
|
a)
|
||||||
task_del "#"
|
task_del "#"
|
||||||
echo -e "\033[31m旧版任务已清空!\033[36m"
|
echo -e "\033[31m旧版任务已清空!\033[36m"
|
||||||
sleep 1
|
sleep 1
|
||||||
|
break
|
||||||
;;
|
;;
|
||||||
d)
|
d)
|
||||||
task_del "task.sh"
|
task_del "task.sh"
|
||||||
echo -e "\033[31m全部任务已清空!\033[36m"
|
echo -e "\033[31m全部任务已清空!\033[36m"
|
||||||
sleep 1
|
sleep 1
|
||||||
|
break
|
||||||
;;
|
;;
|
||||||
[1-9] | [1-9][0-9])
|
[1-9] | [1-9][0-9])
|
||||||
|
|
||||||
task_txt=$(sed -n "$num p" "$TMPDIR"/task_list)
|
task_txt=$(sed -n "$num p" "$TMPDIR"/task_list)
|
||||||
task_id=$(echo $task_txt | awk '{print $1}')
|
task_id=$(echo $task_txt | awk '{print $1}')
|
||||||
if [ "$task_id" = 0 ]; then
|
if [ "$task_id" = 0 ]; then
|
||||||
@@ -258,6 +264,7 @@ task_manager(){ #任务管理列表
|
|||||||
sed -i "/$cronname/d" $clashdir/tools/cron 2>/dev/null
|
sed -i "/$cronname/d" $clashdir/tools/cron 2>/dev/null
|
||||||
rm -f $TMPDIR/conf
|
rm -f $TMPDIR/conf
|
||||||
}
|
}
|
||||||
|
break
|
||||||
else
|
else
|
||||||
task_des=$(echo $task_txt | awk '{print $2}')
|
task_des=$(echo $task_txt | awk '{print $2}')
|
||||||
task_name=$(cat "$CRASHDIR"/task/task.list "$CRASHDIR"/task/task.user 2>/dev/null | grep "$task_id" | awk -F '#' '{print $3}')
|
task_name=$(cat "$CRASHDIR"/task/task.list "$CRASHDIR"/task/task.user 2>/dev/null | grep "$task_id" | awk -F '#' '{print $3}')
|
||||||
@@ -271,7 +278,8 @@ task_manager(){ #任务管理列表
|
|||||||
echo -e " 0 返回上级菜单"
|
echo -e " 0 返回上级菜单"
|
||||||
read -p "请选择需要执行的操作 > " num
|
read -p "请选择需要执行的操作 > " num
|
||||||
case "$num" in
|
case "$num" in
|
||||||
0)
|
"" | 0)
|
||||||
|
return 0
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
task_type && task_del $task_des
|
task_type && task_del $task_des
|
||||||
@@ -296,17 +304,21 @@ task_manager(){ #任务管理列表
|
|||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
errornum
|
errornum
|
||||||
|
sleep 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
task_manager
|
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
errornum
|
errornum
|
||||||
|
sleep 1
|
||||||
|
break
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
task_recom(){ #任务推荐
|
task_recom(){ #任务推荐
|
||||||
echo "-----------------------------------------------"
|
echo "-----------------------------------------------"
|
||||||
echo -e "\033[32m启用推荐的自动任务配置?这包括:\033[0m"
|
echo -e "\033[32m启用推荐的自动任务配置?这包括:\033[0m"
|
||||||
|
|||||||
Reference in New Issue
Block a user