Linux Bash基礎特性 (1)

Bash的基礎特性
(1)命令歷史

   環境變量
       $HISTSIZE:命令歷史紀錄的條數
       $HISTFILE:~/.bash(用戶的家目錄)
       $HISTFILESIZE:命令歷史文件記錄歷史的條數
   刪除歷史:
   history
          -d 要刪除的第幾條
          -c 清空命令歷史
   history #:顯示歷史中最近的#條命令(#:代表數字)
       -a: 手動追加當前會話緩沖區的命令歷史紀錄至文件中
           調用歷史中的命令
          !#:重復執行第#條命令
          !!:執行上一條
          !string:最近一個以"string"開頭的指令
  調用上一條命令的最后一個參數
   !$或ESC+.
  控制命令歷史的記錄方式
   環境變量:HISTCONROL
       ignoredups:忽略重復的命令;連續且相同方式為"重復"
       ignorespace:忽略所有以空白開頭的命令
       ignoreboth :上述兩者同時生效
      修改環境變量方式: 例:export HISTCONTROL=ignorespace
         變量賦值:把賦值符號后面的數據存儲于變量名指向內存空間;只對當前shell有效

(2)命令補全

直接補全:用戶給定的字符串只對應唯一的一條命令
列表顯示:以用戶給定的字符串對應的命令不唯一,按兩下"Tab"鍵就會列出,如下圖所示

  內部命令:當你鍵入一個命令并且執行的時候,系統會首先判斷是否為內部命令,如果是就直接執行
  外部命令:如果不是內部命令,就根據$PATH環境變量定義的路徑,從左向右在每個路徑,
  下搜尋用戶給定的命令名命名的文件,第一次找到的則是要執行的文件

(3)路徑補全

把用戶給出的字符串當做路徑的開頭,并在指定的上級目錄下搜尋以指定字符串開頭的文件名,如果唯一,直接補全,否則還是兩
次"Tab"鍵給出列表

(4)命令行展開

~:展開為用戶的家目錄
~USERNAME:展開為指定用戶的家目錄
{}:可承載一個以逗號分隔的列表,并將其展開為多個路徑
    /tmp/{a,b} = /tmp/a,/tmp/b
    /tmp/{tom,jerry}/hi = /tmp/tom/hi,/tmp/jerry/hi

(5)命令執行結果狀態

    成功
    失敗

    bash使用特殊變量"$?"保存最近一條命令的執行狀態結果
    0:成功
    1-255:失敗
    echo $? 獲取上一條指令的執行結果狀態
程序執行有兩類結果:
    程序的返回值:結果
    程序的運行狀態結果:成功/失敗
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 官網 中文版本 好的網站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,438評論 0 5
  • Ubuntu的發音 Ubuntu,源于非洲祖魯人和科薩人的語言,發作 oo-boon-too 的音。了解發音是有意...
    螢火蟲de夢閱讀 99,529評論 9 467
  • bash是Unix shell的一種,在1987年由布萊恩·福克斯為了GNU計劃而編寫。1989年發布第一個正式版...
    dxldeng閱讀 370評論 0 0
  • 多么想和你見一面,看看你最近改變。<陳奕迅> 奔波于生計之中,有時候總會忘記停下來想想,自己最初的想法還在...
    Mr丨Zoul閱讀 201評論 0 0
  • 貌似已經好久沒有鼓弄樹莓派啦,這么有意思的東西,不能讓它就這么吃灰了!今天要和大家分享一個利用樹莓派實現開門監控的...
    高桿python閱讀 5,826評論 5 15