Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

.bashrc 設定檔完整指南:打造高效率的 Bash 環境

編輯:Linux 教學

~/.bashrc 是 Bash 互動式 Shell 的核心設定檔,掌握它能讓你的命令列操作更得心應手。本文整理自 Emmanuel Rouat 釋出、註解詳盡的範例檔案(基於 Linux 系統),涵蓋環境變數、別名、函數、提示符客製化、可程式化補全等進階技巧。建議逐段研讀,並將實用片段移植到自己的 .bashrc 或腳本中。

基本架構與環境設定

檔案開頭載入系統級設定 /etc/bashrc,接著自動偵測 $DISPLAY 變數以支援遠端 X11 轉發。核心 Shell 選項啟用 cdspell(目錄拼寫修正)、histappend(歷史紀錄追加)、extglob(擴展通配符)等,並關閉 MAILCHECK 避免郵件提示干擾。

視覺化歡迎訊息與提示符

定義 ANSI 色碼變數(red、cyan 等),登入時顯示 Bash 版本、$DISPLAY、日期與 fortune 小語錄。提供兩種提示符模式:

  • powerprompt(預設):顯示時間、系統負載、主機名、歷史編號、目前目錄,並設定終端機標題列。
  • fastprompt:精簡版,適合連線較慢的遠端會話。

根據 $DISPLAY 判斷本地/遠端,自動切換提示符顏色(本地青色、遠端紅色)。

實用別名集錦

安全與導航

alias rm='rm -i'      # 刪除前確認
alias cp='cp -i'      # 複製前確認
alias mv='mv -i'      # 移動前確認
alias mkdir='mkdir -p'# 遞迴建立目錄
alias ..='cd ..'
alias path='echo -e ${PATH//:/\\n}'  # 以換行顯示 PATH

ls 家族(需 GNU ls)

alias ls='ls -hF --color'   # 人類可讀、類型標記、著色
alias la='ls -Al'           # 顯示隱藏檔
alias lx='ls -lXB'          # 依副檔名排序
alias lk='ls -lSr'          # 依大小排序
alias lt='ls -ltr'          # 依時間排序
alias lr='ls -lR'           # 遞迴列出
alias tree='tree -Csu'      # 樹狀結構

其他常用

alias h='history'
alias j='jobs -l'
alias du='du -kh'
alias df='df -kTh'
alias more='less'
alias grep='grep --color=auto'

強大的自訂函數

檔案與字串處理

  • ff <pattern>:依名稱模糊搜尋檔案
  • fe <pattern> [cmd]:搜尋並對結果執行命令(預設 file)
  • fstr [-i] <pattern> [<filename pattern>]:在檔案中搜尋字串並高亮顯示
  • lowercase:批次將檔名轉小寫
  • swap file1 file2:交換兩個檔名

程序與系統管理

  • my_ps [ps args]:列出當前使用者程序(PID、CPU%、記憶體%、時間、指令)
  • pp <pattern>:依關鍵字過濾程序
  • killps [-SIGNAL] <pattern>:互動式依名稱殺掉程序
  • ii:顯示主機資訊(登入用戶、日期、uptime、記憶體、IP、ISP)
  • repeat <n> <command>:重複執行命令 n 次

其他工具

  • xtitle <string>:設定終端機標題列(支援 xterm/rxvt)
  • man 包裝函數:自動設定標題列為手冊頁名稱
  • te:xemacs/gnuserv 啟動器

可程式化補全(Programmable Completion)

需 Bash ≥ 2.05 並啟用 shopt -s extglob。內建大量 complete 規則:

  • 主機名補全:ssh、ping、ftp 等
  • 變數/別名/函數/使用者補全
  • 目錄補全:cd、mkdir、rmdir
  • 檔案類型導向:.zip→unzip、.gz→gunzip、.pdf→acroread、.jpg→xv 等
  • make 目標補全(掃描 Makefile)
  • cvs、killall、sudo 等進階補全函數

並提供通用的 _longopts_func 自動解析 --help 產生長選項補全,適用於 wget、ls、configure 等指令。

使用建議

  1. 將完整檔案存為 ~/.bashrc 後,執行 source ~/.bashrc 立即生效。
  2. 依個人習慣裁剪:刪除不需的別名、函數,或將大型函數獨立成腳本放入 ~/bin。
  3. 搭配 ~/.bash_profile 確保登入 Shell 也能載入(通常在 .bash_profile 中 source ~/.bashrc)。
  4. 定期備份並同步至多台主機,保持一致的操作體驗。
提示:本範例源自 Advanced Bash-Scripting Guide 附錄 K,原作者 Emmanuel Rouat 歡迎回饋。深入理解每一段落,能讓你從「會用 Bash」進化為「駕馭 Bash」。
Copyright © Windows教程網 All Rights Reserved