
Linux (私は CentOS 7 を使用しています) には、実行可能なすべてのコマンドを表示する機能が組み込まれています。コマンドは、コンソールで Tab キーを 2 回押してプロンプトを表示することで実行されます。
Display all 1130 possibilities? (y or n)
押すと、y
膨大なコマンドのリストがコンソールに出力されます。
この出力をファイルにキャプチャする方法はありますか?
それとも、このリストはすでにローカルに保存されていますか? その場合、どうすればアクセスできますか?
答え1
私が選択した解決策は、次のコマンドを実行することでした:
$ compgen -A function -abck | sort -u >> cmds.txt
実行可能なコマンド、関数、エイリアスをすべてテキストファイルに追加します。cmds.txt
出典:https://stackoverflow.com/questions/948008/linux-command-to-list-all-available-commands-and-aliases
編集: sort -u
glenn jackman の提案に従って重複を削除するコマンドを追加しました
答え2
重複して出力されているようですcompgen
。おそらく、PATH 内の複数の場所に表示されるプログラムです。
オートコンプリートは次のように言います:
$ [tab][tab]
Display all 2328 possibilities? (y or n)
compgen は言います:
$ compgen -A function -abck | wc -l
2647
$ compgen -A function -abck | sort -u | wc -l
2328
これがあなたにとって重要かどうかは分かりません。