ターミナルで自動完了を有効にする方法

この 先端 頻繁に(毎日)使用するすべての人に役立ちます ターミナル またはGNU / Linuxシステムのコンソール。

始める前に

bash-completionパッケージがインストールされていない場合は、次のようにインストールします。

aptitude installbash-completion

すべてのユーザーのTTYで自動完了を有効にする

/ etc / profileを開きます

ナノ/その他/プロファイル

/ etc / profileで次の行を調べます...

#インタラクティブシェルでbash完了を有効にする
#if [-f / etc / bash_completion] &&! shopt -oq posix; その後
#。 / etc / bash_completion
#fi

そして、次のように置き換えます。

if ["$ BASH"]; その後
       if [-f / etc / bash_completion] &&! shopt -oq posix; その後
            。 / etc / bash_completion
       fi
fi

後者は、rootを含むすべてのユーザーに対してbash_completionをアクティブにします。 ただし、TTYでのみアクティブ化され、ターミナルエミュレーターではアクティブ化されません。

TTYをリセットし、それだけです。

ご覧のとおり、元のファイルにifを追加しました。これにより、bash_completionがBashにいるときにのみ実行されることが確認されます。 その条件がないと、GDMはbash_completionを呼び出し、何らかの理由でxsessionと競合するため、前述のエラーが発生します。

すべてのユーザーの端末エミュレーターで自動完了を有効にする

/etc/bash.bashrcを開きます

#nano /etc/bash.bashrc

/etc/bash.bashrcで次の行を探します...

#インタラクティブシェルでbash完了を有効にする
#if [-f / etc / bash_completion] &&! shopt -oq posix; その後
#。 / etc / bash_completion
#fi

...そして、次のように「#」を削除します(コメントを解除します)。

#インタラクティブシェルでbash完了を有効にする
if [-f / etc / bash_completion] &&! shopt -oq posix; その後
    。 / etc / bash_completion
fi

後者は、rootを含むすべてのユーザーに対してbash_completionをアクティブにします。 ただし、ターミナルエミュレータでのみ有効になり、TTYでは有効になりません。

ターミナルを再起動すると、変更が有効になります。

XNUMX人のユーザーに対してのみター​​ミナルエミュレーターで自動補完を有効にする

ファイル〜/ .bashrcを作成(または存在する場合は編集)する必要があります。

ナノ〜/ .bashrc

次のように追加します(または、存在しない場合は検索しますが、/ etc / bash.bashrcで行われるようにコメントします)。

#インタラクティブシェルでbash完了を有効にする
if [-f / etc / bash_completion] &&! shopt -oq posix; その後
    。 / etc / bash_completion
fi

-ファイルを作成する場合は、これらの行を追加するだけです。
-これらの行が存在するが存在しない場合は、ファイルの最後に追加します。
-存在し、これらの行が存在する場合は、単にコメントを外します。

コンソールを再起動すると、変更が有効になります。

必要に応じて自動完了を有効にする

使用したいときにbash_completionを実行する必要があります。 ターミナルで(exitコマンドを使用して)セッションを終了するか、グラフィカル環境にいる場合は使用しているターミナルを閉じると、非アクティブになります。 いつでも実行するには、次のようにします。

。 / etc / bash_completion
カルロスフィオリティに感謝します!

出典 98ノートブック


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

  1.   ダニエル

    自動完了コマンドプログラムをダウンロードして、自分のコンピューターでカスタム使用したい。
    また、最新モデルのWebブラウザに転送してください。
    私と協力してくれませんか?
    ありがとうございます。