タブ完成の「3197の可能性をすべて表示」に上限があるのはなぜですか?

タブ完成の「3197の可能性をすべて表示」に上限があるのはなぜですか?

私は多くの(.pdb)ファイル(9917)を含むディレクトリを持っています。私はそれらがすべてそこにあることを確認するためにそれらを数えたいと思いました(ダウンロードには9917があることがわかりました)。ディレクトリにCDを挿入してTabキーを2回押すと、端末が応答します。

Display all 3197 possibilities? (y or no)

最初はダウンロードにエラーがあると思いましたが、試してみると次のようになります。

find -maxdepth 1 -type f | wc -l

9917のファイルが実際にすべてそこにあることを確認しました。私の質問は:なぜ上限は3197ですか?私の考えでは、この数字には特別なものはありません。最大の符号付き整数(short、intまたはlong)ではありません。実際に保存するには12ビットが必要です(すべてではありません)。その最大値が比較的変更しやすい場合(一部の設定がどこかにあります)、それを変更する方法も知りたいです。

重要な場合は、Ubuntu 14.04を使用しています(ただし、最大値はシステムごとに異なる可能性がありますが、これがUbuntuの問題かどうかは疑わしいです)。また、私が使用するシェルはbashです。

ベストアンサー1

追加の引数なしでターミナルで Tab キーを押すと、現在のディレクトリではないパスのエントリが完成します。これを行うには、前に他のパラメータを追加してください。

compgen -cbashの出力(にあるすべての実行可能ファイルがリストされています)を見ると、期待したものと$PATH似ていることがわかります。

compgen -c | wc -l

おすすめ記事