回答:
CDPATHこれには環境変数を使用できます。Bashのmanページから:
CDPATH
cdコマンドの検索パス。これは、cdコマンドで指定された宛先ディレクトリをシェルが検索するディレクトリのコロン区切りのリストです。サンプル値は「。:〜:/ usr」です。
あなたの場合、設定できます
export CDPATH=.:/user/something/somefolders
で~/.bashrc、入力cd somewhereすると移動します/user/something/somefolders/somewhere(somewhere現在のディレクトリ内に名前の付いたディレクトリがないと仮定します)。
または、フォルダsomewhereを実際の名前で参照したくない場合は、/user/something/somefolders/somewhere使用する名前のシンボリックリンクを含む隠しディレクトリを作成できます。また、頻繁にアクセスする他のディレクトリへのリンクを含めることもできます。次にCDPATH、その隠しディレクトリへのパスを含めるように設定します。ノートがこの方法では、あなたの場合にcd somewhere、その後cd ..、あなたは隠されたディレクトリに羽目になるだろう。それはあなたにとって問題かもしれませんし、そうでないかもしれません。
このようなことのためにいつも使用する2つのショートカット:
エイリアス
エイリアスsomedir = 'cd / home / john / www / something /'
次に、入力somedirしてそのディレクトリに移動できます。これらをに追加します.bashrc。
シンボリックリンク
ln -s / long / path / to / some / other / folder / shortcut
これにより、/shortcutにリンクするファイルが作成されます/long/path/to/some/other/folder。次に、/shortcut代わりにcdと入力します。これの注意点は、ルートディレクトリ(またはリンクを配置したディレクトリ)がかなり一杯になることです。エイリアスが好きです。
ln -s /long/path/to/some/other/folder /shortcutは、リンクを作成したい場所にショートカットを作成した別の方法で行ったときに起こるはずです。更新するために編集を送信しました。
/slでしょうか。たとえば、そこにショートカットを作成しますか?(つまりln -s /long/path/to/some/other/folder /sl/shortcut、ルートに混乱がなく、プロンプトのパスがシンボリックリンクであることを視覚的に思い出させます。
私は常にbashインタラクティブ検索を使用する傾向があります。それを試してみてください。ctrl + rで呼び出して、パスの一部(somewhereなど)の入力を開始します。おそらく、cdコマンドがポップアップ表示されます。:)
もう1つできることは、問題のパスを環境変数に保存することです。これらの行を~/.profileファイルに追加します。
somedir=/user/something/somefolders/somewhere
export somedir
その後、次のコマンドでディレクトリにアクセスできます。
cd "$somedir"
alias他の回答に記載された方法は、最も直接的なルートです。
別のオプションは、「学習するコマンド」として説明されるautojumpを試すcdことです。このLifeHacker投稿の詳細。