(エイリアス関連)sudoで始まるシェルコマンドを自動補完する方法

(エイリアス関連)sudoで始まるシェルコマンドを自動補完する方法

次のエイリアスがあるとします.bashrc

alias docker='sudo docker'

それから| →docker run -v /tmp/test:/foo …で始まり、bash端末でオートコンプリートを試みると、エイリアスは次docker run -v /tmpsudoような気の利いた動作を引き起こします。

$ドッカーの実行 -v /tmpTAB
$ docker run -v /tmp[sudo] ユーザーパスワード:

Ctrl+Cこの時点では、実行と再起動を超えてコマンドラインを編集することはほとんど不可能です。

この問題を克服するためのソリューションはありますか?つまり、sudoエイリアスに暗黙的なコンテンツを保持しますが、定期的なオートコンプリートを期待するときはパスワードプロンプトを避けてください。

その関数とは無関係の解決策がalias良いでしょう(ここで提起された問題は、直接入力したときにも発生することを考慮してください$ sudo command …)。

ベストアンサー1

コンピュータにパスワードプロンプトが表示されないようにするには、sudoこの-nオプションを試してください。

マニュアルページは次のとおりですsudo

-n, --非対話型

ユーザーに何らかのタイプの入力を要求しないでください。コマンドの実行にパスワードが必要な場合、sudoはエラーメッセージを表示して終了します。

おすすめ記事