從 shell 快速跳到目錄

從 shell 快速跳到目錄

像vim 和emacs 這樣的文字編輯器有像ace Jump、avy 這樣的插件,允許你按下一個字符,然後它會用一個臨時按鍵綁定突出顯示該字符的每個實例,然後你可以按下按鍵綁定直接跳到它

我想知道 shell(例如 bash)是否存在類似的東西可以快速導航到特定目錄而無需cd遍歷目錄?也許會列出一定深度的目錄,等待輸入字符,使用按鍵序列突出顯示字符實例,並cd在按下序列時進入其中?

如果這樣的東西還不存在,那麼創造它有多容易?

答案1

fzf這樣做。它是一個模糊完成/文件選擇助手。它的基本用途是從一個大列表中選擇文件(例如,find . -type f | fzf > selected)。

安裝它並將其加載到 shell 中後,您可以按AltC打開一個窗口,您可以在其中鍵入模糊字串以查找目錄。當您選擇一個並按 Enter 鍵時,fzf 將cd進入該目錄。

要以相同的方式自動完成文件名,您可以按CtrlT。若要搜尋歷史記錄,請按CtrlR

答案2

也許這不完全是你想要的,但我認為值得嘗試世界CD。它建立一個儲存目錄清單的「資料庫」(單一文字檔案)。該wcd foo命令顯示包含的目錄列表foo,您可以選擇其中之一。

另一個類似的選項是自動跳轉

答案3

有多種 shell 和 shell 擴充支持部分路徑自動完成是其中之一

例如cd /v/l/fsck Tab將路徑轉換為/var/log/fsck/.cd /u/s/appl Tab將拓展路徑/usr/share/applications/

其他一些替代方案:

也可以看看

相關內容