bash shell入門(一)

bash 的主要優點

1、命令記憶功能

  • 記錄在~/.bash_history。要注意的是,本次登錄所執行的命令都被暫存在臨時內存中,當你成功注銷后才寫入到文件。
  • 可以使用history命令查看曾經執行的命令
    !number 可以重復執行history命令(number為history命令查詢出來的命令序號)

2、命令和文件補全功能([Tab]按鍵的好處)

  • [Tab]接在一串命令的第一個后面,則為命令補全(所以如果想知道系統當中有多少以c開頭的命令,可以按下"c[Tab][Tab]")
  • [Tab]接在一串命令的第二個后面,則為文件補全

3、命令設置別名功能

  • 設置臨時別名:alias cls='clear'
  • 設置永久別名:將上述命令保存到~/.bashrc

4、作業控制、前臺、后臺控制
可以實現單一登錄的環境中實現多任務

5、腳本程序(shell script)
非常強大

6、通配符
除了完整的字符串之外,bash還支持許多的通配符來幫助用戶查詢與命令執行
例如想要知道/usr/bin下面有多少以X開頭的文件:
ls -l /usr/bin/X*

變量

1、定義變量
myname=helloworld
這樣子就定義好一個變量,可以通過echo $myname或echo ${myname}來打印這個變量

2、取消變量
unset myname即可取消上述設置的變量

3、設置變量的類型
可以用declare來定義變量的類型:declare [-aixr] variable
-a 數組
-i 整形
-x 功能和export一樣
-r readonly

4、變量內容的刪除、替代與替換

刪除與替換

  • ${var#str} 若變量內容從頭開始的數據符合關鍵字,則將符合的最短數據刪除
  • ${var##str} 若變量內容從頭開始的數據符合關鍵字,則將符合的最長數據刪除
  • ${var%str} 若變量內容從尾向前的數據符合關鍵字,則將符合的最短數據刪除
  • ${var#str} 若變量內容從尾向前的數據符合關鍵字,則將符合的最短數據刪除
  • ${var/str/new_str} 若變量內容符合舊字符串,則將符合的第一個數據刪除
  • ${var//str/new_str} 若變量內容符合舊字符串,則將符合的全部數據刪除

變量的測試與替換

\1.PNG
\1.PNG

3、變量的作用域
上面定義的變量只能在本進程中使用,父進程定義的變量無法再子進程內使用。不過可以通過export將變量變成環境變量后,就能在子進程下面應用了。

環境變量

1、可以用env查看環境變量,下面是一些環境變量的說明:

  • HOME 代表用戶的主文件夾
  • SHELL 告知我們目前這個環境使用的shell是哪個程序,默認是/bin/bash
  • PATH 就是執行文件查找的路徑,以":"分隔

2、可以用set同時查看環境變量和自定義變量

  • PS1 提示符的設置
  • $ 代表目前這個shell的線程代號
  • ? 關于上一個執行命令的回傳碼
    當我們執行某些命令時,這些命令都會回傳一個執行后的代碼。一般來書,如果成功執行改名了,則會回傳一個0。
    例如:
    echo $HOME //打印 /root
    echo $? //打印 0

4、終端機的環境設置
stty -a可以列出所有的按鍵與按鍵內容
bash默認的組合鍵:

  • ctrl + c:終止目前的命令
  • ctrl + d:輸入結束,例如郵件結束的時候
  • ctrl + m:就是enter
  • ctrl + s:暫停屏幕的輸出
  • ctrl + q:恢復屏幕的輸出
  • ctrl + u:在命令提示符下,將整行命令刪除
  • ctrl + z:暫停目前的命令
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容