shell
檢查shell
/etc/shells目錄下- /bin/sh (已經被 /bin/bash 所取代)
- /bin/bash (就是 Linux 預設的 shell)
- /bin/tcsh (整合 C Shell ,提供更多的功能)
- /bin/csh (已經被 /bin/tcsh 所取代)
為什麼我們系統上合法的 shell 要寫入 /etc/shells
系統某些服務在運作過程中,會去檢查使用者能夠使用的 shells ,而這些 shell 的查詢就是藉由 /etc/shells
登入的時候,系統就會給我一個 shell 讓我來工作了。 而這個登入取得的 shell 就記錄在 /etc/passwd 。讓使用者無法以其他服務登入主機,就得將那些怪怪的 shell 寫到 /etc/shells 當中了。
記憶使用過的指令
在~/.bash_history 可找到,注意.bash_history記錄的是前一次登入所執行的指令,這一次的指令存在記憶體中,當你退出系統後纔會保存到.bash_history中!
命令別名的設定 –alias
alias lm=’ls -al’
查詢指令是否爲bash shell的內建命令:
『 \ [Enter] 』
刪除長指令
[ctrl]+u 從遊標處向前刪除指令串
[ctrl]+k 向後刪除指令串echo變量
echo $HOME 或者是 echo ${HOME}
echo $MAIL 或者是 echo ${MAIL}變量與變量內容用‘=’連接;
myname=VBird
等號兩邊不能直接接空白字符;
myname = VBird或myname=VBird Tsai
變量內容若有空白可用“ 或者‘ 將內容結合起來;雙引號內的$ 可保持原有特性,單引號內$ 爲純文字;
”\“將特殊符號轉義;
myname=VBird\ Tsai
一串指令中還需額外指令提供資訊,使用反單引號`或$();
version=$(uname -r) 再 echo $version
可用 “$變量名” 或 ${變量} 累加內容;
PATH="$PATH":/home/bin 或 PATH=${PATH}:/home/bin
一個變量要在其他程序中使用需要export,來變爲環境變量;
export PATH
取消變數的方法為使用 unset;
unset myname
若你有一個常去的工作目錄名稱為:/cluster/server/work/taiwan_2015/003/,如何進行該目錄的簡化?
[dmtsai@study ~]$ work=”/cluster/server/work/taiwan_2015/003/”
[dmtsai@study ~]$ cd $work\注:可以在 bash 的設定檔(~/.bashrc)中直接指定,那我每次登入只要執行
cd $work
就可以了env
RANDOM – 隨機數(介於 0~32767 之間)
set
PS1 – 提示符
\d :可顯示出『星期 月 日』的日期格式,如:”Mon Feb 2”
\H :完整的主機名稱。舉例來說,鳥哥的練習機為『study.centos.vbird』
\h :僅取主機名稱在第一個小數點之前的名字,如鳥哥主機則為『study』後面省略
\t :顯示時間,為 24 小時格式的『HH:MM:SS』
\T :顯示時間,為 12 小時格式的『HH:MM:SS』
\A :顯示時間,為 24 小時格式的『HH:MM』
\@ :顯示時間,為 12 小時格式的『am/pm』樣式
\u :目前使用者的帳號名稱,如『dmtsai』;
\v :BASH 的版本資訊,如鳥哥的測試主機版本為 4.2.46(1)-release,僅取『4.2』顯示
\w :完整的工作目錄名稱,由根目錄寫起的目錄名稱。但家目錄會以 ~ 取代;
\W :利用 basename 函數取得工作目錄名稱,所以僅會列出最後一個目錄名。
# :下達的第幾個指令。
$ :提示字元,如果是 root 時,提示字元為 # ,否則就是 $ 囉~
$ (shell的PID)
- ?:(關於上個執行指令的回傳值)
shell--鳥哥私房菜(1)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.