Linux

“java”命令在 Linux 中的 Tab 補全

  • November 22, 2021

我在終端的 Linux 作業系統上用 vim 編寫了一個 java 程序。可以通過鍵入文件名的開頭然後按

來使用 vim 完成程序名稱。(=> ) 但是當我使用命令執行程序時,文件名沒有製表符完成。 我可以輸入,按但沒有任何反應,我必須寫出完整的文件名。 那麼為什麼使用,或的命令中的選項卡完成文件名,但不能使用命令? 有沒有辦法為命令啟用選項卡完成?vim``vim he``tab``vim helloworld.java

java
java hellow``tab

vim``mv``cd``java
java

這取決於您使用的外殼。

bash每個命令都必須有一個完成規範(compspec)。

您可以使用以下命令顯示命令名稱的目前 compspec

complete -p java
bash: complete: java: no completion specification

一種簡單的方法(您可以將其放入~/.bashrc或作為單獨的文件放入/etc/bash_completion.d/)是

complete -o default java

或者你可以用類似的東西縮小可能的結果

complete -G "*.jar" java

為命令添加補全是一種好方法,但您可以強制 bash 執行文件名補全,Esc /而不是使用預設的上下文相關補全tab

引用自:https://unix.stackexchange.com/questions/678463