From d5a771999b37813e84a13781a4beec10637641e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=96=B5=E4=BA=8C?= <66155308+miaoermua@users.noreply.github.com> Date: Sun, 9 Jun 2024 20:45:54 +0800 Subject: [PATCH] Create Test --- init.sh | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 init.sh diff --git a/init.sh b/init.sh new file mode 100644 index 0000000..8c865ac --- /dev/null +++ b/init.sh @@ -0,0 +1,101 @@ +#!/bin/bash + +# Menu Function +show_menu() { + echo "-------------------------" + echo " CatTools " + echo "-------------------------" + echo "1. Collect Debug Logs" + echo "0. Exit" + echo "-------------------------" + echo -n "Please enter your choice: " +} + +# Log Collection Function +collect_logs() { + if [ -f /www/logs.txt ]; then + rm /www/logs.txt + fi + + cat /etc/banner >> /www/logs.txt + date >> /www/logs.txt + + echo "## RELEASE" >> /www/logs.txt + echo "==========" >> /www/logs.txt + cat /etc/catwrt_release >> /www/logs.txt + + echo "## Application" >> /www/logs.txt + echo "==========" >> /www/logs.txt + opkg list_installed >> /www/logs.txt + + echo "## SYSLOG" >> /www/logs.txt + echo "==========" >> /www/logs.txt + logread >> /www/logs.txt + + echo "## DMESG" >> /www/logs.txt + echo "==========" >> /www/logs.txt + dmesg >> /www/logs.txt + + echo "## Plugins" >> /www/logs.txt + echo "==========" >> /www/logs.txt + cat /tmp/openclash.log >> /www/logs.txt + cat /tmp/log/ssrplus.log >> /www/logs.txt + cat /tmp/log/passwall.log >> /www/logs.txt + cat /tmp/log/passwall2.log >> /www/logs.txt + + echo "## Task" >> /www/logs.txt + echo "==========" >> /www/logs.txt + top -b -n 1 >> /www/logs.txt + + echo "## Network Configuration" >> /www/logs.txt + echo "==========" >> /www/logs.txt + ifconfig -a >> /www/logs.txt + + echo "## UCI Network" >> /www/logs.txt + echo "==========" >> /www/logs.txt + uci show network >> /www/logs.txt + + echo "## Firewall" >> /www/logs.txt + echo "==========" >> /www/logs.txt + iptables -L -v -n >> /www/logs.txt + ip6tables -L -v -n >> /www/logs.txt + + echo "## Routing Table" >> /www/logs.txt + echo "==========" >> /www/logs.txt + ip route >> /www/logs.txt + ip -6 route >> /www/logs.txt + + echo "## Memory Usage" >> /www/logs.txt + echo "==========" >> /www/logs.txt + free -h >> /www/logs.txt + + echo "## Disk Usage" >> /www/logs.txt + echo "==========" >> /www/logs.txt + df -h >> /www/logs.txt + + lan_ip=$(uci get network.lan.ipaddr) + + echo "日志已收集到 /www/logs.txt" + echo "使用浏览器访问下载 http://$lan_ip/logs.txt" + exit +} + +# Main Loop +while true; do + show_menu + read choice + case $choice in + 1) + collect_logs + ;; + 0) + echo "Exiting..." + break + ;; + *) + echo "Invalid choice, please try again" + ;; + esac +done + +echo "Done!"