jarsignerファイル・パラメーターに対してオートコンプリートが機能しません。

jarsignerファイル・パラメーターに対してオートコンプリートが機能しません。

私はLubuntu 12.10を使用しています。現在のフォルダにtest.apkというファイルがあるとしましょう。

1.) LXTerminal/bashに入力すると、

adb install t<TAB>

端末は自動的に「test.apk」で正しく完了します。

2.)しかし試してみると

jarsigner -verify t<TAB>

動作しません。

なぜこれが起こるのですか? 2番目のケースでも動作するようにできますか?

ベストアンサー1

jarsigner完成スクリプトがあります バッシュ完了。 bashの完成を使用している可能性があります。多くのディストリビューションはデフォルトでそれをインストールします。完成スクリプトは、jarsignerいくつかのファイル名のフィルタリングを実行します。拡張子を持つファイルが必要です.jar。以下は、完成したスクリプトから抜粋したものです。

# Check if a jar was already given.
local i jar=false
for (( i=0; i < ${#words[@]}-1; i++ )) ; do
    if [[ "${words[i]}" == *.jar && \
        "${words[i-1]}" != -signedjar ]] ; then
        jar=true
        break
    fi
done
...
if ! $jar ; then
...
        COMPREPLY=( $( compgen -W '-keystore -storepass -storetype
            -keypass -sigfile -signedjar -digestalg -sigalg -verify
            ...
    _filedir jar
    ...

.jar拡張子を持つファイルが提供されるまで_filedir また、compgenjarファイルと特定のプログラムフラグに完了を制限するために使用されます。

/usr/share/bash-completion/completions/jarsigner自分で見たい場合は、完成スクリプトは次の場所にあります。

おすすめ記事