如何在 Linux 上列出所有可用的命令和別名?
Linux 為我們提供了大量的命令及其別名,我們可以利用它們。儘管這些命令服務於不同的目的,但我們仍然可以在終端的任何地方使用所有這些命令。
我們可以透過不同的方式與 Linux 命令進行互動。當涉及到列出所有可用於終端的命令時,我們也有不同的方法,我們可以自己編寫 shell 指令碼,或者可以使用 shell 庫函式來為我們完成此操作。
讓我們考慮第一種方法,我將使用一個名為 **compgen** 的 shell 庫關鍵字,它是一個 bash 內建命令,可用於列出所有可用的命令。
語法
compgen -flag
在上述語法中,標誌是一個佔位符,可以根據我們的需要進行替換。
標誌可以具有所有這些不同的值 -
-c - 用於列出所有可以執行的命令。
-a - 用於列出所有可以執行的別名。
-k - 用於列出所有可以執行的關鍵字。
-b - 用於列出所有可以執行的內建命令。
-A function - 用於列出所有可以執行的函式
-A function -abck - 用於一次列出上面顯示的所有內容。
由於我們只需要列出命令及其別名,因此我們只會使用 **-c** 和 **-a** 標誌。
為了使用它,只需使用下面顯示的命令建立一個 shell 檔案 -
touch sample.sh
現在插入下面顯示的程式碼 -
compgen -c
然後在執行指令碼之前授予指令碼許可權 -
chmod 777 sample.sh ./sample.sh
輸出
immukul@192 Downloads % ./sample.sh if then else elif fi case esac for select while until do done in . . .
為了列印別名,我們只需要將 sample.sh 檔案中的程式碼替換為下面顯示的程式碼 -
compgen -a | grep ls
輸出
ls is /bin/ls
廣告