操作系统

BASHShell~~!
作者 Mscong 2005年04月15日 17:32

    没有多少时间看,今天有些忙,先大概看了一下内容,没打算放东西上来。还是不够完整..先了解一下好了.....

    知道什麼是 Shell 之後,那麼我們來瞭解一下 Linux 使用的是哪一個 shell 呢?什麼!哪一個?難道說 shell 不就是『一個 shell 嗎?』哈哈!那可不!由於早年的 Unix 年代,發展者眾,所以由於 shell 依據發展者的不同就有許多的版本,例如常聽到的 Bourne SHell (sh) 、在 Sun 裡頭預設的 C SHell、 商業上常用的 K SHell、, 還有 TCSH 等等,每一種 Shell 都各有其特點。至於 Linux 使用的這一種版本就稱為『 Bourne Again SHell (簡稱 bash ) 』,這個 Shell 是 Bourne Shell 的增強版本,也是基準於 GNU 的架構下發展出來的呦!

    在介紹 shell 的優點之前,先來說一說 shell 的簡單歷史吧:第一個流行的 shell 是由 Steven Bourne 發展出來的,為了紀念他所以就稱為 Bourne shell ,或直接簡稱為 sh !而後來另一個廣為流傳的 shell 是由柏克萊大學的 Bill Joy 設計依附於 BSD 版的 Unix 系統中的 shell ,這個 shell 的語法有點類似 C 語言,所以才得名為 C shell ,簡稱為 csh !由於在學術界 Sun 主機勢力相當的龐大,而 Sun 主要是 BSD 的分支之一,所以 C shell 也是另一個很重要而且流傳很廣的 shell 之一(因為太多的程式設計師使用的就是 C 語言啦!)!

    好了,那麼 BASH 是怎麼一回事呢?這個 shell 是 GNU 計畫中重要的工具軟體之一,目前也是 GNU 作業系統中標準的 shell ,他主要相容於 sh ,並且依據一些使用者需求,而加強的 shell 版本,可以說目前幾乎所有的 Linux distribution 都是使用 bash 作為管理核心的主要 shell !因此,不論您使用的是那個 distribution ,你都難逃需要學習 bash 的宿命啦!那麼這個 shell 有什麼好處,幹嘛 Linux 要使用他作為預設的 shell 呢? BASH 主要的優點有底下幾個:

    

在瞭解了 BASH 的優點之後,再來我們要來討論的是:那如何在 Shell 提供的環境中下達指令呢?其實很簡單的,下達指令的方式為: [root@test /root]# command [-options] parameter1 parameter2 ...

     指令 選項 參數(1) 參數(2)

    1. command 為指令的名稱,例如變換路徑的指令為 cd 等等;

    2. 中刮號[]並不存在於實際的指令中,而加入參數設定時,通常為 - 號,有時候完整名稱會輸入 -- 符號;

    3. parameter1 parameter2.. 為依附在 option 後面的參數,或者是 command 的參數;

    4. command, -options, parameter1.. 這幾個咚咚中間以空格來區分,不論空幾格 shell 都視為一格;

    5. 指令太長的時候,可以使用 符號來跳脫 [Enter] 符號,使指令連續到下一行。

    實例:

    [root@test /root]# ls -al /root

    [root@test /root]# ./configure --prefix=/usr/local --with-tcp_wrappers

    > --with-pam

    [root@test /root]# ls -al /root

    很簡單吧!OK!那麼再來一個問題:『Shell 是什麼時候開始接管 Linux 主機的!?』我們在後面會再提到『開機流程』的介紹,這裡先跳過去,假設你的機器已經開機成功了,那麼主機便進入等待使用者 login 的狀態。當使用者輸入了帳號與密碼,並且順利的 pass 之後,經過了 shell 的環境變數檔案讀取功能,最後,使用者進入自己的『家目錄』之後,例如 root 的家目錄在 /root 底下,一般使用者的家目錄則在 /etc/passwd 這個檔案裡面規定,那麼主機就已經丟了一個程序稱為 bash 的給你操作囉!

    

    本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/5935/showart_21610.html

BASHShell~~!

BASHShell~~!

长按识别二维码 进入IT168查看全文

请长按保存图片
{{data.thematic.text}}