1. 程式人生 > >bash、命令列、歷史命令、命令別名、引用符號

bash、命令列、歷史命令、命令別名、引用符號

bash 一些用法

shell:子shell 
bash:
 1.命令歷史、命令不全
 2.管道、重定向
 3.命令別名
 4.命令列編輯
 5.命令名展開
 6.檔名通配
 7.變數
 8.程式設計,指令碼 

命令列編輯:

游標跳轉:Ctrl+a :跳到命令列首
          Ctrl+e :跳到命令列尾
          Ctrl+u :刪除游標至命令列首的內容
          Ctrl+k :刪除游標至命令列尾的內容
          Ctrl+“向前/向後” :調到上一個單詞的首字母 
          Ctrl+l :清屏

命令歷史:

 檢視命令歷史:history        type history
 -c :清空命令歷史
 -d :刪除指定位置的命令 -d 200 3  200次的命令
 -w :儲存命令歷史至歷史檔案中 ~/ .bash-history         

環境變數:
 PATH: 命令搜尋路徑            echo $PATH     更改路徑PATH="$PATH":/bin
 HISTSIZE:命令歷史緩衝區大小   echo $HISTSIZE

命令歷史的使用技巧:
 !n :執行命令歷史中的第n條命令
 !-n:執行命令歷史中的倒數第n條命令
 !!:執行上一條命令
 !string(字串):執行命令歷史中最近一個以指定字串開頭的命令 !man
 !$:引用前一個命令的最後一個引數
 Esc,.:引用前一個命令的最後一個引數
 Alt+.:引用前一個命令的最後一個引數
命令不全:搜尋PATH環境變數所指定的每個路徑下我們給出的字串開頭的可執行檔案,如果多於多餘一個,兩次tab,可以給出列表,否則將直接補全。
 PATH:   補全
路徑補全:搜尋我們給出的起始路徑下的每個檔名,並試圖補全。

命令別名:

 alias "CMSALIAS=COMMAND [options] [arguments]" 
    alias cls=clear
 刪除別名 unalias  
   unalias cls

檔名通配:globbing

 *:任意長度的任意字元
?:任意單個字元
[]:匹配指定範圍內的任意字元
  [0-9] ,[a-z],[a-zA-Z],[ABCD],[0-9a-zA-Z]
[^]:匹配指定範圍之外的任意單個字元,取反。
   [:space:]:空白字元   這就代表空格,進行引用時。[[:space:]]
   [:punct:]:標點符號
   [:lower:]:小寫字母
   [:upper:]:大寫字母
   [:alpha:]:大小寫字母
   [:digit:]:數字
   [:alnum:]:數字和大小寫字母
  [[:alpha:]]*[[:space:]]*[[:

引用符號


echo: 顯示,打印出
    echo "The current directory is $(pwd)." -------The current directory is /home/yang.

    touch ./file-$(date +%F-%H-%M-%S).txt--------file-2018-03-20-00-24-48.txt

bash支援的引號:
``:命令替換
“”:弱引用,可以實現變數替換
'':強引用,不完成變數替換