概述
bash 是 Bourne Shell (sh) 的改進版本,結合了互動式 shell 功能和強大的腳本編寫能力。它提供自訂提示符、命令補全、歷史記錄搜尋等便利功能,對於編寫複雜的自動化腳本至關重要。
主要特點
bash 提供的主要核心功能。
- 命令歷史記錄與編輯
- Tab 自動補全(檔案、命令、變數等)
- 透過別名(alias)和函數進行自訂
- 作業控制(背景/前景進程管理)
- 強大的 shell 腳本支援
- 環境變數和 shell 變數管理
主要選項
執行 bash 命令本身時可用的主要選項。這些選項用於控制腳本的執行方式或 shell 的行為模式。
執行模式
腳本除錯
生成的命令:
請試著組合命令。
這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。
`bash` 執行命令。
請將上述選項組合在一起,與 AI 一同虛擬執行命令。
使用範例
以不同方式啟動 bash shell 或處理腳本的範例。
啟動基本互動式 shell
bash
啟動一個新的 bash shell 會話。
執行字串命令
bash -c "echo '目前目錄: $(pwd)'"
使用 bash 執行特定的命令字串並退出。
執行腳本檔案
bash my_script.sh
執行指定的 bash 腳本檔案。
啟動登入 shell
bash --login
啟動一個 bash shell,該 shell 會像登入時一樣載入初始化檔案。
以除錯模式執行腳本
bash -x my_script.sh
在執行腳本時追蹤並輸出每個命令。
從標準輸入執行腳本
echo "ls -l" | bash -s
讓 bash shell 執行透過管道傳遞的命令。
提示與注意事項
提高 bash 使用效率的技巧以及編寫腳本時的注意事項。
主要設定檔
用於自訂 bash shell 行為的主要設定檔。
- ~/.bashrc: 在啟動互動式 shell 時執行。用於定義別名(alias)、函數、提示符設定等。
- ~/.bash_profile: 在啟動登入 shell 時執行。用於設定環境變數、呼叫其他初始化腳本等。
- /etc/profile: 系統範圍的登入 shell 設定檔。包含應用於所有使用者登入 shell 的設定。
腳本編寫提示
編寫穩定高效 bash 腳本的建議。
- 在腳本開頭使用 `#!/bin/bash` shebang 來明確指定使用 bash 執行。
- 使用變數時,務必用雙引號括起來,以避免空格或特殊字元問題(例如:`echo "$VAR"`)。
- 使用 `set -e` 使腳本在發生錯誤時立即終止,並使用 `set -u` 在使用未定義變數時產生錯誤。
- 使用函數來模組化程式碼並提高可讀性。
- 使用註解來解釋腳本的目的和複雜的邏輯。