天天看點

Linux _ Shell基本指令

一、shell簡介

1、使用背景

  •   随着各式Linux系統的圖形化程度的不斷提高,使用者在桌面環境下,通過電機、拖拽等操作就可以直接完成大部分的工作。
  • 然而,許多Ubuntu Linux 功能使用Shell指令來實作,要比使用圖形界面互動,完成的更快、更直接。

2、簡介:

  • 英文單詞shell可直譯為”貝殼“。”貝格“是動物作為外在保護的一種工具。
  • 可以這樣認為,Linux中的Shell就是Linux核心的一個外層保護工具,并負責完成使用者和核心的互動。
  • 指令是使用者向系統核心發出控制請求,與之互動的文本流。
  • shell是一個指令行解釋器,将使用者指令解析為作業系統能夠所了解的指令,實作使用者與作業系統的互動。
  • 當需要重複執行若幹指令,可以将這些指令集合起來,加入一定的控制語句,編輯成為shell腳本檔案,交給shell 批量執行。

3、執行過程

  • 使用者在指令提示符下鍵入指令文本,開始與shell進行互動。
  • 接着,shell将使用者的指令或者按鍵轉化成核心所能夠了解的指令。
  • 控制作業系統做出反應,知道控制相關硬體裝置。
  • 然後,shell将輸出結果通過shell送出給使用者。

4、主流的shell的有幾種:

 —— Bourne Shell (簡稱sh) :他是Unix的第一個shell程式,早已成為了工業标準。

 —— C  Shell (簡稱sh) 

 —— Korn Shell (簡稱sh) 

 —— Bourne Again Shell (簡稱sh) :能夠提供環境變量以配置使用者shell環境。---------- Ubuntu 預設安裝的Shell.

5、基本的指令

  • 立即關機 : sudo shutdown -t now
  • 立即重新開機 : sudo shutdown -r now                      或者   sudo reboot now
  • 機器将在45分鐘内自動關機 : sudo shutdown -h +45
  • 機器将在45分鐘内自動重新開機 : sudo shutdown -r +45

   whoami :目前使用者名

    hostname:目前主機名

    pwd:目前路徑

二、shell 指令格式

1、基本介紹

  • shell提示符辨別了指令行的開始。使用者在提示符後面輸入一條指令并按Enter鍵,完成向系統送出指令。

        — 通常shell指令提示符采用了以下的格式:

           [email protected]:direction$

             使用者名           主機名       目錄名

username:使用者名,顯示目前登入使用者的賬号名。

hostname:主機名,顯示登入的主機名,例如若遠端登陸後,則顯示登入的主機名。

direction :目錄名,顯示目前所處的路徑,當在根目錄下顯示為“/”,當在使用者目錄下顯示為“~”。

2、指令格式

  • 通常一條指令包含三個要素:指令名稱、選項、參數。指令名稱式必須的,選項和參數都可能是可選項。

                 $ Command [-Options] Argument1 Argument2.....

      — $ :She'l'l提示符,如果目前使用者為超級使用者,提示符為“#”,其他使用者的提示符均為“$”。

      — Command :指令名稱,Shell指令或程式,嚴格區分大小寫。

      — Options :指令選項,用于改變指令執行的類型,由“-”引導,可以同時帶多個選項。

      — Argument :指令參數,指出指令作用的對象或目标,有的指令允許帶多個參數。

  其中:

  • 一條指令中的三個要素用空格隔開,不同指令之間用 分号(;)将個指令隔開。
  • 如果一條指令不能在一行寫完,在行尾使用反斜杠(\)标明該條指令未結束。

三、shell 指令行操作

注:CTRL + C :撤銷 上次指令。

1、補齊指令與檔案名

     ——    在初學時 記不全指令或者檔案名時。Bash Shell 的指令與檔案補齊功能會幫助使用者。在輸入指令或者檔案名的幾個字元後,按TAB鍵或者ESC鍵自動補齊剩餘沒有輸入的字元串。

     ——    如果存在多個指令 或檔案有相同字首,shell将列出所有相同字首的指令或檔案。shell給出的提示資訊,幫助使用者回憶和完成輸入。之後等待使用者輸入足夠的字元。

     ——    需要說明的時,連續按兩下TAB鍵或者ESC鍵,用于指令補齊;按下一次TAB鍵,用于檔案名補齊。

2、查詢指令曆史

  • 按“↑” 以及“↓”鍵 出現指令曆史
  • 輸入 history  [number]
  • echo $#HISTSIZE    :顯示存儲的曆史記錄條數 。
  • HISTSIZE=100         :将存儲的曆史記錄容量更改為 100 條。  ------- 修改時暫時的,隻在目前的指令視窗有效。
  • 永久修改  ---------- ls -a : 修改 vi .bashrc檔案中的值。