Bash シェルでの高速ディレクトリのナビゲーション

Bash シェルでの高速ディレクトリのナビゲーション

/Project/Warnest/docs/など、完全に関連していないパスのディレクトリを頻繁に切り替えたいと思います~/Dropbox/Projects/ds/test/

cd /[full-path]/しかし、タイピングを続けたいとは思わない。古い作業ディレクトリに切り替えるショートカットコマンドはありますか?

bash .profile私が考えることができる1つの解決策は、一般的なディレクトリに環境変数を追加し、そのcd変数を使用して追加することです。

しかし、他の解決策はありますか?

答え1

2つのディレクトリを切り替える場合は、cd -Switchbackを使用できます。

~からbash(1)マニュアルページ:

議論-に変換されます$OLDPWD ディレクトリを変更する前に。

答え2

CDPATHbashにはシェル変数がありますkshcdpathzsh

CDPATH    The search path for the cd command. This is a colon-separated
          list of directories in which the shell looks for destination
          directories specified by the cd command.

したがって、 ~/.bashrc でこれを設定できます。

export CDPATH=/Project/Warnest:~/Dropbox/Projects/ds

その後、見つかった最初のディレクトリに移動しますcd docscd test(つまり、現在のディレクトリに同じ名前のディレクトリが存在していても依然としてCDPATHクエリされます。CDPATHその名前を持つサブディレクトリを含むディレクトリが多い場合は、最初のディレクトリが使用されます。)

答え3

試してみるもう1つのツールは、次のツールです。自動ジャンプ。エイリアス(デフォルト)の呼び出しデータベースを維持しj、どこに行きたいかについての情報に基づいて決定を下そうとします。たとえば、次のように頻繁に入力する場合:

j ~/Pictures

一度にアクセスできる方法は次のとおりです。

j Pic

~/.bashrcDebianとUbuntuで動作し、デフォルトでは~/.zshrcユーザーごとに含まれています。

答え4

私はaliasbashrcでこのCDを使います。
たとえば、

alias wdoc='cd ~/Project/Warnest/docs'
alias dstest='cd ~/Dropbox/Projects/ds/test'

関連情報