Ultima attività 11 months ago

這段程式碼用來顯示 Logo、檢查權限並測試網址是否存在

timmy ha revisionato questo gist 11 months ago. Vai alla revisione

Nessuna modifica

timmy ha revisionato questo gist 11 months ago. Vai alla revisione

1 file changed, 68 insertions

url_check_script.sh(file creato)

@@ -0,0 +1,68 @@
1 + #!/usr/bin/env bash
2 +
3 + # ===== 顏色設定 =====
4 + RED="\033[31m"
5 + GREEN="\033[32m"
6 + YELLOW="\033[33m"
7 + CYAN="\033[36m"
8 + RESET="\033[0m"
9 +
10 + # ===== 專案 Logo(ASCII Art)=====
11 + show_logo() {
12 + echo -e "${CYAN}"
13 + echo " ____ _ "
14 + echo " | _ \ ___ ___ | | ___ ___ "
15 + echo " | |_) / _ \ / _ \| |/ _ \/ __|"
16 + echo " | __/ (_) | (_) | | __/\__ \\"
17 + echo " |_| \___/ \___/|_|\___||___/"
18 + echo -e "${RESET}"
19 + }
20 +
21 + # ===== 權限檢查與自動 sudo =====
22 + require_root() {
23 + if [[ $EUID -ne 0 ]]; then
24 + echo -e "${YELLOW}需要 root 權限,將自動以 sudo 重新執行...${RESET}"
25 + if command -v sudo >/dev/null 2>&1; then
26 + exec sudo "$0" "$@"
27 + else
28 + echo -e "${RED}找不到 sudo,請手動以 root 執行。${RESET}"
29 + exit 1
30 + fi
31 + fi
32 + }
33 +
34 + # ===== 用 curl --head 測試檔案網址 =====
35 + check_url_exists() {
36 + local url="$1"
37 + if curl --head --silent --fail "$url" >/dev/null; then
38 + echo -e "${GREEN}網址存在:${url}${RESET}"
39 + return 0
40 + else
41 + echo -e "${YELLOW}找不到檔案:${url}${RESET}"
42 + return 1
43 + fi
44 + }
45 +
46 + # ===== 主程式入口 main =====
47 + main() {
48 + show_logo
49 +
50 + require_root "$@"
51 +
52 + # 範例網址測試
53 + FILE_URL1="https://example.com/file.txt"
54 + FILE_URL2="https://example.com/file_backup.txt"
55 +
56 + if ! check_url_exists "$FILE_URL1"; then
57 + echo -e "${CYAN}嘗試第二個網址...${RESET}"
58 + if ! check_url_exists "$FILE_URL2"; then
59 + echo -e "${RED}兩個網址都無法存取,請檢查連線或檔案名稱。${RESET}"
60 + exit 2
61 + fi
62 + fi
63 +
64 + echo -e "${GREEN}腳本執行完成!${RESET}"
65 + }
66 +
67 + # ===== 執行主程式 =====
68 + main "$@"
Più nuovi Più vecchi