キーを押しながらTabキーを押すだけでフォルダを完成できます

キーを押しながらTabキーを押すだけでフォルダを完成できます

次のディレクトリがあるとします。

 foo/
   bar.js
   bar/

fooに入り、cd「ba」と入力してタブを押すと、ファイル名がフォルダと重なって完了できません。

フォルダ(またはファイル)のみを提供するタブを押し続けることができるキーはありますか?

ベストアンサー1

TL、DR:. /etc/bash_completionに追加してください.bashrc

正確な質問に答えるために、そのような組み込みコマンドはありません。バッシュ注文するさまざまな種類のオブジェクト(ファイル名、ユーザー名、変数名など)を完成させますが、ディレクトリに限定されません。

ただし、古代バージョンのbashを実行しない限り、次のものを使用できます。状況に合った完成、2000年にリリースされたバージョン2.04に追加された機能です。一部のディストリビューションではデフォルトで有効になっているため、インストールする必要があります。bash-completionパッケージ化して~/.bashrc。ほとんどのディストリビューションでは、というパッケージを提供し、bash-completionここにアクティベーションスクリプトを配置します/etc/bash_completion。つまり、.bashrc次の行を含める必要があります。

. /etc/bash_completion

cd 以降は を入力して を押すとディレクトリ名だけが完成しますTab

非旧バージョンのbash(≥4.0)を使用している場合は、shopt -s autocdyourと入力して.bashrcコマンドを省略して代わりに書き込むcdことができます。タブ補完は行の最初の単語に表示されます。コマンド名とディレクトリを完成させます。名前(および)を現在のディレクトリに保存します。barcd bar$PATH$CDPATH

Bash 4.0では、関数のコマンドラインバージョンを直接作成することもできます(以前のバージョンも機能しましたが、問題が発生しました)。だから本当に欲しいなら、そうすることができます。Bashコマンドの完成をカスタマイズする方法は?比較的複雑な例があります。別の例を検索して見つけてくださいREADLINE_LINEcomplete

おすすめ記事