2007年5月19日 星期六

[BASH] 打造自己的 shell 環境 (1) - File & Alias

在 bash 中,要打造屬於自己的 shell 環境,可以從四個地方下手,分別是:
  1. Special file
  2. Alias
  3. Option
  4. Variable

在這邊先來介紹如何使用 special file 與 alsias 來打造個人化的 shell 環境。


Special file

所謂的 special file,也不是什麼很特別的檔案啦! 就只是存在於 home directory 中的一些檔案,大概包含了以下檔案:
  • .bash_profile (或是 .profile)
  • .bash_login (可能不存在)
  • .bash_logout
  • .bash_rc

從檔案名稱可以看出,這些檔案一般都是以隱藏檔的方式存在,原因就是讓一般使用者不去亂修改到檔案中的內容;當然對於使用 Linux 已經一段時間的 user 來說,如果可以透過這些檔案來打造一個方便自己使用的 shell 環境,當當然是很好阿! 所以這邊要來研究一下要怎麼作....

基本上,當 user 登入系統後,系統會為 user 建立 shell 環境,而所參考的檔案,分別是以下順序:
.bash_profile(.profile) -> .bash_login -> .bashrc
以下貼出 Ubuntu 7.04 中的 .profile 內容:(這是要 user 登入時才會執行的喔!)
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
PATH=~/bin:"${PATH}"
fi
從檔案中可以看出,.profile 會去執行 .bashrc 中的內容來進行 shell 環境的設定,但是僅有在 user 登入系統時作一次,因此若要加入其他的設定,可以在「. ~/.bashrc」這一行後面任何地方自行加入設定!

而若要進行更細部的調整,產生 subshell 時還要再對 shell 環境進行其他微調,則可以直接編輯 .bashrc。

因此,總結來說,如果要在 login 時進行環境的調整,可以編輯以下兩個檔案:
  1. .bash_profile (或是 .profile)
  2. .bashrc
而在 shell 中還要針對 subshell 進行微調,則就是調整以下檔案:
  • .bashrc

如此,則是利用 file 來打造 shell 環境的方法囉!


Alias

alias 的部分,其實可以說明的並不多,這個方式主要是將常用的語法及參數搭配後,另訂一個好記的名字來使用而已!

以下是一些範例:
alias search=grep

alias ll='ls -al'

alias rm='rm -i'
其實要注意的就是在指令的部分,若是含有參數,讓整個指令有空白的部分,就必須要用單引號將整個指令包住,才會有效。

而這些 alias 的指令,可以自行決定要擺在 .bash_profile 或是 .bashrc 中。

沒有留言:

張貼留言