Linux shell history
命令的歷程展開 表格
!!
常唸成(bang-bang),代表命令中的最後一個指令
!-n
代表命令中的第n個指令(往回推的)
!foo
代表命令中最後一個包含foo字串開頭的 命令
!?foo
代表命令中最後依個包含foo字串的命令
^foo1^foo2
快速取代,重複最後一個命令並將命令中的foo1字串用foo2取代

P.S Unix 上面的 !常唸成 bang
1.bash shell 的命令會記錄在~/.bash_history檔案裡面
  也就是使用者的home directory 下面的一個隱藏檔案
   (linux unix 檔案前面有一個.的為隱藏檔要用 ls -a才可以看)
2.在視窗下開多個shell只會以最後關閉的shell的指令記錄在~/.bash_history
   裡面所以要把指令用的最多的視窗最後關閉
基本的命令歷程編輯功能與Emace的按鍵組合
C-p
將游標向上移動一列
C-n
將游標向下移動一列
C-b
將游標往後移動依個字元
C-f
將游標往前移動依個字元
C-a
將游標移到列首
C-e
將游標移到列尾
C-l
清除畫面並將現行的命令移到畫面的頂端
M-<
移往命令歷程的頂端
M-> 移往命令歷程的尾端
C-d
往右刪除一個字符(所刪除的是遊標所在的字)
C-k
剪下(kill)游標所在位置開始到列尾間所有的文字
C-y
貼上 (yank)先前所剪下的文字
M-d
剪下(kill)一個單字
C-r bar
反向搜尋bar的字串
C-s bar
正向搜尋bar的字串
3.C-s 有一些機器代表軟體流量控制(software flow control)的
  XOFF信號這樣會照成終端機停止工作,這個時候按 C-q按鍵收到
  XON信號這樣才會繼續送出資料