歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 對話 UNIX: 從簡單的按鍵操作學起

對話 UNIX: 從簡單的按鍵操作學起

日期:2017/2/28 16:49:29   编辑:Linux教程

用戶與計算機交互的方式在不斷發生變化。啟動後提供純命令行界面的操作系統已逐漸演化為圖形化前端。但是,脫離構成操作系統的構建塊有時並非是邁向正確方向的必要步驟。IBM? AIX? 操作系統一直把握著重點:穩定性、功能和穩健性。它通過保留強大的命令行界面 (CLI) 來實現這一目標。如果您未曾學習如何使用 CLI 或需要復習 CLI 的基礎知識,請繼續往下閱讀。

  用戶與計算機交互的方式在不斷發生變化。啟動後提供純命令行界面的操作系統已逐漸演化為圖形化前端。然而,脫離構成操作系統的構建塊有時並非是邁向正確方向的必要步驟。向圖形化用戶界面 (GUI) 過渡往往意味著損失功能;而且,用戶漸漸傾向於不願詳細了解他們所使用的計算機。幸運的是,與其他 UNIX? 和 Linux? 系統類似,AIX 操作系統一直把握著重點:計算機操作系統的穩定性、功能和穩健性。

  大量 UNIX 和 Linux 供應商已充分認識到操作系統的 CLI 的重要性。但是,出於自動化、降低用戶使用計算機的難度或其他原因,用戶已忘記或從未了解 CLI 的細節。本文向新用戶和已經遺忘細節的用戶介紹 CLI,以幫助他們記住或回想起 CLI 對於管理、開發和常規 UNIX 計算之所以重要的原因。

  什麼是命令行?

  在計算機上工作時,了解實際使用的工具非常重要。如果您曾經使用過 UNIX 或 Linux,那麼您應該聽說過術語 shell 或 命令行。這兩個術語可以作為同義詞使用,並且指的是用戶正在運行的實際 UNIX shell。UNIX 中的術語 shell 指的是您在鍵入命令或執行功能時所使用的接口。

  當用戶通過控制台或網絡登錄 UNIX 系統時,將調用可定義 shell(位於 /etc/passwd),並通過配置文件設置用戶環境(本文稍後將進行說明),於是用戶准備好在 shell 中執行操作。當用戶在命令行(即用戶正在使用的 shell)中鍵入命令時,用戶只能看到 stdin(即標准輸入),這是用戶或程序提供的輸入。當用戶按 Enter 或 Return 鍵時,通過 shell 發送 stdin 以執行命令,然後用戶可能收到 stdout(即標准輸出)和 stderr(即標准錯誤),具體取決於輸出重定向的方式(例如,重定向到用戶的顯示器、文件或打印機)。術語 stdout 表示執行的程序所返回的輸出數據,而 stderr 指的是程序遇到或返回的錯誤。用戶不會看到處理單個或多個命令的所有底層代碼的執行情況,而是看到非常簡單化的輸入、輸出和錯誤。由於上述原因,用戶登錄時調用的程序被恰當地稱為 shell,因為它隱藏了操作系統的所有底層調用。

  shell 的歷史

  UNIX shell 至今存在的時間已超過 35 年,它現在仍然在發展壯大!它創始於 1971 年,這一年 AT&T 貝爾實驗室的 Ken Thompson 創建了第一個 UNIX shell,它具有貼切的名稱 Thompson shell。雖然 Thompson shell 缺少人們日常使用的 UNIX 所具備的一些重要內置功能,如管道 (|)、編寫 shell 腳本的能力和 if 條件語句,但是該 shell 的基礎功能(如數據重定向)仍存在於現今使用的 shell 中。

  後來,在 1997 年,Thompson shell 被 Bourne shell(即 sh)所取代。Bourne shell 是由 AT&T 貝爾實驗室的 Stephen Bourne 創建的,它成為 UNIX 第 7 版 (V7) 的缺省 shell。Bourne shell 使 UNIX 的發展向前邁進了一大步。到這時,用戶可以編寫 shell 腳本,在變量中存儲信息和導出信息,控制文件描述符,控制信號處理,使用 for 循環和 case 語句,以及其他大量功能。雖然 Bourne shell 創建至今已有 30 多年時間,目前它仍在大量的 UNIX 系統中廣為使用,並且是當今許多 UNIX 系統的超級用戶 -root- 的缺省 shell。

  在過去三十年中,UNIX shell 獲得了許多改進和增強。結果,出現了多種不同的 shell。圖 1 顯示了少數 UNIX shell 的家族樹。雖然該圖並不完整,但它顯示了衍生出其他較次要 shell 的那些主要 shell。

圖 1. UNIX shell 家族樹

Copyright © Linux教程網 All Rights Reserved