Linux

那些下劃線命令是什麼?

  • March 19, 2013

當我tab tab _在終端時,Bash 建議了 206 個可能性。我試圖執行其中一個,_git_rm但什麼也沒發生,它們是什麼?

這是一個螢幕截圖:

在此處輸入圖像描述

這些名稱以下劃線開頭的函式是可程式完成引擎的一部分。Bash 在這裡遵循 zsh 的約定,其中生成完成的函式somecommand被呼叫_somecommand,如果該函式需要輔助函式,它們被呼叫_somecommand_stuff

如果您手動呼叫它們,這些完成函式通常沒有任何用處或引發錯誤:它們旨在從完成引擎中呼叫。

這遵循了各種程式語言中相當普遍的做法,即使用前導下劃線表示函式或變數以某種方式位於庫內部,而不是為最終使用者(或最終程序員)準備的。

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