##用戶界面-----shell
shell是:包裹住內核,對外(用戶)交互的橋樑
在登陸之後啓動,
Unix和Linux提供不同的shell,
Linux--bash(看passwd文件後面用戶的shell都是bash,可以改成sh)
Unix--sh(有Unix的時候就有了)
##shell的發展:
solaris下才能看到純正的sh,即Bounce shell,
現在 很多solaris工程師還在用ksh,
C shell--集成了腳本編程功能,(控制語句類似C語言)
增強型c shell----tcsh,
bash----GNU寫的,爲了紀念第一個shell編寫人(275頁)
Unix:B、C、K shell,
Linux: sh(和當年的不一樣了,它鏈接到bash上,其實就是和bash是一個)
ash:基本沒人用,默認不安裝,ksh,tch,ash
##掛一下光盤,安裝個ksh玩玩
(我用的是VMware虛擬機,redhat6.0,光盤是redhat的系統鏡像)
在mnt目錄裏新建一個目錄:cd,
再掛載在cd上:mount /dev/cdrom /mnt/cd/(在這裏省略了一些參數,因爲Linux會自動分辨。如果要記住光盤的參數,那麼別的硬件的參數也就要記了,有點麻煩,所以乾脆讓他自己分辨,還不容易出錯),
之後就可以在cd目錄下看到你光盤裏的東西了。
下面從光盤裏安裝東西。
(光盤裏的安裝包都放在了Packages目錄裏邊)
因爲ksh默認不安裝的,那這裏就裝一下它:
cd Packages/
用rpm解壓安裝:
rpm -ivh ksh按tab鍵自動補全,回車,
兩個100%,ok,裝好了,下面試一下ksh命令,ok,提示符變成ksh形式的了。
/\剛纔那是手動掛載。
其實linux能夠自動掛載,掛到/misc/cd目錄下,當你到了misc目錄下的時候,你會發現裏面什麼都沒有,也沒有cd這個目錄,當你cd cd的時候,卻進入cd這個目錄了,這就是說,當你想訪問的時候,他才顯示。然後進去安裝啥的和上述的一樣。
(yum裝可以解決包依賴關係,以後講,很重要)
p281,shell之間的關係,(如果bash下用sh到sh,sh下用csh到。。。。)就像洋蔥皮一樣,一層一層,現在的shell數據傳給上一層shell然後再這樣,最上一層shell和kernel通信。如果關shell的話,要Ctrl+D好幾次,一次關一個shell,回到上一個shell。
##那麼好玩的東西惡搞一下豈不是爽的飛起~~
用這個命令:PS1=‘whateverUwannaSay’回車,然後你就會看到你的shell提示符變成單引號裏的東西了。是不是應該好好利用一下?
試試這個:PS1=‘Sorry,ERROR Happened When Your System Run, Please Restart Your System!’,把上面這條指令原封不動的寫到~/.bash_profile文件中(這文件是登陸後啓用)。
不知道的一登陸之後嚇尿了!要是你能接觸到主機然後能進單用戶模式(在另一篇有講)的話,那你就惡作劇去吧,在不惡作劇就老了·····(現在好想發一個摳鼻的表情····)
然後怎麼恢復呢,回到文件中把那一行命令刪掉。