「cd !$」在 bash 中是什麼意思,我可以使用哪些其他類似的替換?

「cd !$」在 bash 中是什麼意思,我可以使用哪些其他類似的替換?

我看過有人這樣做:

cp . yy/
cd !$

最後一行翻譯為:

cd yy/

所以我認為這!$意味著“上一行的最後一個參數”。

我對嗎?

還有其他類似的替代品嗎?

我在哪裡可以找到它們的文檔?

答案1

!$是最後一個單字最後一個命令的。

更多的:

!!- 最後一個命令
!foo- 運行以foo(例如!ps!mysqladmin)開頭的最近命令
!foo:p- 打印將運行的命令!foo,並將其添加為命令歷史記錄中的最新命令
!$- 最後一個命令的最後一個“單詞”(/path/to/file在命令中ls -lAFh /path/to/file-uroot在中mysql -uroot
!$:p- 列印該單字!$將替換
!*- 最後一個命令的除第一個單字之外的所有單字(-lAFh /path/to/file在命令中ls -lAFh /path/to/file-uroot在 中mysql -uroot
!*:p- 列印 !* 將替換的單字

^foo^bar- 將foo最後一個命令替換為bar,列印結果,然後運行。 ( mysqladmni -uroot, 運行^ni^in, 結果mysqladmin -uroot)

{a,b,c}將單字傳遞給命令,依序替換ab、 和ccp file{,.bk}運行cp file file.bk

Ctrl + a- 跳到行首
Ctrl + b- 後移一個字元
Ctrl + c- 終止指令
Ctrl + d- 從遊標下刪除
Ctrl + e- 跳到行尾
Ctrl + f- 前移一個字元
Ctrl + k- 刪除到 EOL
Ctrl + l- 清除螢幕
Ctrl + r- 向後搜尋歷史記錄
Ctrl + R-向後搜尋多次出現的歷史記錄
Ctrl + t- 將目前字元與前一個字元交換
Ctrl + u- 從遊標處向後刪除
Ctrl + w- 向後刪除一個單字
Ctrl + xx- 在 EOL 和目前遊標位置之間移動
Ctrl + x @- 顯示可能的主機名稱補全
Ctrl + z- 掛起/停止命令
Ctrl + x; Ctrl + e- 將行編輯到您喜歡的位置編輯

Alt + <- 移至歷史記錄中的第一行
Alt + >- 移至歷史記錄中的最後一行
Alt + ?- 顯示當前完成列表
Alt + *- 插入所有可能的完成
Alt + /- 嘗試完成文件名
Alt + .- 撤回上一個命令的最後一個參數
Alt + b- 向後移動
Alt + c- 將單字大寫
Alt + d- 刪除單字
Alt + f- 向前移動
Alt + l- 將單字變為小寫
Alt + n- 向前非增量搜尋歷史記錄
Alt + p- 非增量向後搜尋歷史記錄
Alt + r- 呼叫命令
Alt + t- 將當前單字與前一個單字調換
Alt + u- 將單字變為大寫
Alt + back-space- 從遊標處向後刪除

http://cheat.errtheblog.com/s/bash/

另外,這裡還有很多好東西:http://www.gnu.org/software/bash/manual/bashref.html
和這裡:http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_03_04.html

相關內容