2024-05-01 16:32:57 +08:00
|
|
|
#!/bin/bash
|
2024-05-01 21:39:16 +08:00
|
|
|
#From https://github.com/oneclickvirt/backtrace
|
2024-05-21 16:10:20 +08:00
|
|
|
#2024.05.21
|
2024-05-01 16:32:57 +08:00
|
|
|
|
2024-05-02 10:58:19 +08:00
|
|
|
rm -rf /usr/bin/backtrace
|
2024-05-01 21:39:16 +08:00
|
|
|
os=$(uname -s)
|
2024-05-01 16:32:57 +08:00
|
|
|
arch=$(uname -m)
|
2024-05-01 21:39:16 +08:00
|
|
|
|
|
|
|
case $os in
|
|
|
|
Linux)
|
|
|
|
case $arch in
|
2024-05-02 10:59:04 +08:00
|
|
|
"x86_64" | "x86" | "amd64" | "x64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-linux-amd64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-02 10:58:19 +08:00
|
|
|
"i386" | "i686")
|
2024-05-02 09:00:18 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-linux-386
|
|
|
|
;;
|
2024-05-21 16:10:20 +08:00
|
|
|
"armv7l" | "armv8" | "armv8l" | "aarch64" | "arm64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-linux-arm64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported architecture: $arch"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
Darwin)
|
|
|
|
case $arch in
|
2024-05-02 10:59:04 +08:00
|
|
|
"x86_64" | "x86" | "amd64" | "x64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-darwin-amd64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-02 10:58:19 +08:00
|
|
|
"i386" | "i686")
|
2024-05-02 09:00:18 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-darwin-386
|
|
|
|
;;
|
2024-05-21 16:10:20 +08:00
|
|
|
"armv7l" | "armv8" | "armv8l" | "aarch64" | "arm64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-darwin-arm64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported architecture: $arch"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
FreeBSD)
|
|
|
|
case $arch in
|
|
|
|
amd64)
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-freebsd-amd64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-02 10:58:19 +08:00
|
|
|
"i386" | "i686")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-freebsd-386
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-21 16:10:20 +08:00
|
|
|
"armv7l" | "armv8" | "armv8l" | "aarch64" | "arm64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-freebsd-arm64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported architecture: $arch"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
OpenBSD)
|
|
|
|
case $arch in
|
|
|
|
amd64)
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-openbsd-amd64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-02 10:58:19 +08:00
|
|
|
"i386" | "i686")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-openbsd-386
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
2024-05-21 16:10:20 +08:00
|
|
|
"armv7l" | "armv8" | "armv8l" | "aarch64" | "arm64")
|
2024-05-01 21:48:50 +08:00
|
|
|
wget -O backtrace https://github.com/oneclickvirt/backtrace/releases/download/output/backtrace-openbsd-arm64
|
2024-05-01 21:39:16 +08:00
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported architecture: $arch"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
echo "Unsupported operating system: $os"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
chmod 777 backtrace
|
2024-05-02 11:24:11 +08:00
|
|
|
if [ ! -f /usr/bin/backtrace ]; then
|
2024-05-01 21:39:16 +08:00
|
|
|
mv backtrace /usr/bin/
|
|
|
|
backtrace
|
2024-05-01 16:32:57 +08:00
|
|
|
else
|
2024-05-01 21:39:16 +08:00
|
|
|
./backtrace
|
2024-05-01 16:32:57 +08:00
|
|
|
fi
|