プログラムを実行する前にパラメータを確認してください。

プログラムを実行する前にパラメータを確認してください。

bashと入力unzipしてキーを押すと商標、オートコンプリート機能は、拡張子が.zipのファイルでのみ機能します。あなたはそうしなかった方法?画像ファイルのみを許可するプログラムを作成したい場合は、オートコンプリートを特定の拡張子(例:.jpgや.pngのみ)に制限するにはどうすればよいですか?

これは一種のシステム設定ですか、それとも言語(bash、C ++、Python)に依存するプログラミング設定ですか?

ベストアンサー1

プログラム自体は、渡されたすべてのファイル名を実行します。完成サフィックスの制限は、プログラム.zipの機能とは何の関係もありません。完了はシェルによって行われます。を押すと、Tabシェルはコマンドラインをある程度解析してコンテキストの完了ルールを見つけます。シェルによっては、コンテキスト分析および完了ルールが多少複雑になることがあります。たとえば、完成した機能を持つほとんどのシェルは、コマンドラインに次のものが含まれていて、を押すとecho $P開始Tabされる変数名を探しますP。デフォルトでは、シェルは一般的なケースなので、ファイル名を完成させます。

Bash、tcsh、zshには、完了プロセスをプログラム可能にする方法があります。カーソルの下のコマンドを解析し、テーブル内の特定のコマンドのルールを見つけます。プログラムで完了したら、プログラムテーブルのエントリは、最初の引数が既存のファイルでなければならunzipず、.zip後続の引数がzipアーカイブメンバーの名前でなければならないことを示します。

完了ルールはプログラム自体には含まれていませんが、同じパッケージにプログラムと共に提供される場合があります。たとえば、コマンドを含むパッケージには、bashがどのようにコマンド引数を完成するかを説明するファイルと、zshの同様のファイルを含めることが/usr/bin/fooできます。/etc/bash_completion/foofoo/usr/share/zsh/functions/Completion/_foo

おすすめ記事