星期二, 5月 03, 2005

LPI LINUX 資格檢定讀書心得

Chapter 1
*大體來說,Unix系統的架構從內而外依序是
硬體Hardware--系統核心Kernel--系統呼叫System call--命令解譯器command interpreter(又稱為shell)
*命令列command line是指使用者在shell操作模式中.於提示符號之後所鍵入的一列完整命令.
其中包含: 命令.選項.以及引數串列
*bash (Bourne-Again Shell) 為linux系統上預設的shell
*Shell 變數簡介
PS1 ( Prompt String1 ) 第一個提示字串
可以用echo的指令來顯示PS1或其他shell變數的內容但是必須要變數名稱之前附加$符號

#echo $PS1
[\u@\h \W]\$

在此範例中
每個前置倒斜線的字符對bash而言都有其特殊的意義
\u會被代換成使用者名稱
\h會被代換成系統主機名稱
\W會被代換成現行工作目錄的最底層

PATH --存放命令以及執行程式的目錄清單
要讓bash可以順利找到並執行你在提示符號之後所鍵入的命令.該命令必須
#是一個bash內建的命令
#是一個可執行的程式.其所在目錄已列在PATH的變數中
#有明確的定義(完整路徑名稱)

*在linux系統上.使用者對shell所下達的命令.通常組成自四個部分
#一個有效的命令
#命令選項
#引數
#受理機制(即按下Enter鍵)

*若想要在單一的命令列上同時加入一筆以上的命令應該依序執行順序鍵入每筆命令並以分號(;)將他們隔開.
#ls ; ps

*命令歷程(history)
當bash以互動的模式執行時.可讓使用者存取自己先前所鍵入的命令.使用者所鍵入的每筆命令.都會先存放到歷程清單(history list). 再交由Shell 進行解譯.
history list 是由shell 變數 HISTSIZE所控制
一般於/etc/profile 中定義 預設為1000列
在bash session 結束之後會存放在 ~/.bash_history
並可以用history檢視命令的歷程
*請注意.如果同時啟動多個shell.那只有最後一個結束執行的shell才會將其所經歷過的命令寫入~/.bash_history

沒有留言: