什麼是 .bashrc 以及如何自定義它

什麼是 .bashrc 以及如何自定義它

您的主目錄中藏有許多隱藏文件。如果您運行 macOS 或流行的 Linux 發行版,您會在隱藏文件的頂部附近看到一個名為“.bashrc”的文件。在這裡我們解釋一下 . bashrc 文件的作用以及為什麼要編輯和自定義它。

什麼是。bashrc文件

如果您運行基於 Unix 或類 Unix 的操作系統,您可能已將 bash 安裝為默認終端。雖然存在許多不同的 shell,但 bash 是最常見的,也可能是最受歡迎的。如果您不知道那是什麼意思,bash 會解釋您在終端程序中鍵入的輸入並根據您的輸入運行命令。它允許使用腳本進行某種程度的定制,這就是哪裡。bashrc 進來了。

文件管理器中的 bashrc 文件的屏幕截圖。

這。bashrc 文件包含 bash shell 的自定義選項列表。它在每次啟動時加載。這。bashrc 文件位於主用戶目錄中。這。文件名前的(點)表示它在普通視圖中是隱藏的。您需要激活“查看隱藏文件”選項才能查看它。

我該如何編輯。bashrc文件

您可以編輯。bashrc 在任何文本編輯器中。您還可以使用 nano 在終端中對其進行編輯。

nano ~/.bashrc

如果你從未編輯過你的。bashrc 文件之前,您可能會發現它是空的。沒關係!如果沒有,您可以隨意在任何行添加您的內容。

在 .bashrc 中的編輯必須遵循bash 的腳本格式。如果您不知道如何使用 bash 編寫腳本,可以在線使用許多資源。本指南是對我們在此未提及的 Bash 各個方面的初學者友好介紹。

您所做的任何更改。bashrc 將在您下次啟動終端時應用。如果您想立即應用它們,請運行以下命令:

source ~/.bashrc

.bashrc 自定義提示

您可以使用一些有用的技巧來使您的終端體驗更加高效和用戶友好。

1.別名

別名允許您創建一個長命令的較短版本。

例如,命令 ls 通常用於顯示目錄的內容。您還可以使用ls -lha來顯示包含更多詳細信息的內容。現在有一個別名ll,它被設置為運行ls -lha。您只需ll在終端中輸入,它就會運行ls -lha命令。

顯示基本別名列表的終端。

您需要像這樣格式化您的別名:

alias ll="ls -lha"

在左側鍵入要替換的文本,在引號之間的右側鍵入命令。您可以使用它來創建較短版本的命令,防止常見的拼寫錯誤,或強制命令始終以您喜歡的標誌運行。您還可以使用自己喜歡的速記來規避煩人或容易忘記的語法。

2. 功能

除了速記命令名稱之外,您還可以使用 bash 函數將多個命令組合成一個操作。它們可能會變得非常複雜,但它們通常遵循以下語法:

function_name () {
command_1
command_2
}

例如,下面的命令結合了mkdircd。鍵入md folder_name會在您的工作目錄中創建一個名為“folder_name”的目錄,並立即導航到該目錄。

md () {
mkdir -p $1
cd $1}

$1在函數中看到的 代表第一個參數,即您在函數名稱後立即鍵入的文本。

3. 添加一個簡單的 Bash 提示符

你也可以使用。bashrc 文件以創建自定義 shell 提示符。shell 提示符是顯示在每個終端輸入行開頭的一行文本。這可以包含靜態信息(例如您的系統名稱)或根據 shell 當前工作目錄而變化的動態腳本。

這裡有幾個有趣的 bash 提示,您可以添加到您的 . .bashrc 文件。

4.修改PATH變量

PATH 變量是一個重要的變量,它告訴您的 shell 在哪裡可以找到當前會話的腳本和二進製文件。你可以使用。bashrc 文件來存儲/更改 PATH 變量的內容。這在您想要從自定義目錄運行您自己的程序的情況下很有用。

要修改 PATH 變量,請將以下代碼行添加到您的末尾。文件目錄:

PATH="$PATH:"

這將告訴您的 shell 在加載任何自定義參數之前加載 PATH 的默認值。

顯示引用自身的 PATH 變量的屏幕截圖。

之後,您現在可以將自己的目錄添加到此 PATH 變量的末尾。

PATH=":/home/$USER/bin:/home/$USER/git"

顯示帶有自定義目錄的 PATH 變量的屏幕截圖。

5.導出新的環境變量

環境變量是保存程序或系統進程的會話特定值的容器。它包含為程序提供選項或運行時可以使用的資源的字符串。

例如,某些程序在鏈接到外部數據庫進程時使用“POSTGRESQL_DATABASE”環境變量:

POSTGRESQL_DATABASE="postgres://ramces:password@localhost:5432/db"

顯示自定義環境變量的屏幕截圖。

之後,您需要將變量導出到您的 shell。這會將其從常規 shell 變量轉換為環境變量:

POSTGRESQL_DATABASE="postgres://ramces:password@localhost:5432/db"export POSTGRESQL_DATABASE

顯示導出命令和新環境變量的屏幕截圖。

6. 鏈接。bashrc 與。bash_profile

和…之間的不同。bashrc 和。bash_profile 是 Linux 新手最容易混淆的地方之一。bash_profile 僅在登錄期間運行一次。bashrc 在新的 shell 啟動時運行。

但是,這種模糊的劃分意味著可能會混淆兩者並且無法運行您想要運行的命令。解決此問題的一種快速方法是確保這一點。bashrc 運行一次。bash_profile 加載。

在末尾添加以下代碼行。.bashrc 文件:

if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

顯示 bash_profile 中基本 if 語句的終端。

這個小代碼塊將告訴 shell 檢查是否 a. bashrc 文件存在於您的主目錄中。如果找到一個,Bash 將加載該文件並在當前 shell 實例中運行它的命令。

經常問的問題

請問我的。bashrc 文件與其他 Linux shell 一起工作?

Bash 的開發者設計了. bashrc 文件只適用於 Bash shell。但是,需要注意的是,a 中的大多數命令都是重要的。bashrc 文件與一些類 Unix shell 交叉兼容。例如,您可以復制 a 的內容。bashrc 文件到它的 Korn shell 副本:. kshrc 並且它仍然可以工作。

是否可以使用 Bash 設置我的默認文件權限?

是的。為此,您需要umask在您的末尾添加命令。.bashrc 文件。這是一個簡單的程序,可在您要設置的權限位上設置位掩碼。例如,命令umask 027相當於運行sudo chmod -R 750. /directory

圖片來源:Gabriel Heinzer 來自 Unsplash。Ramces Red 的所有更改和屏幕截圖。

  • Facebook
  • 鳴叫

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *