autojump / z を pushd popd と組み合わせて使用​​する

autojump / z を pushd popd と組み合わせて使用​​する

オートジャンプまたはパス全体の一部のみを入力することで、ファイルシステム内を移動できます (例:z fooに移動します/long/long/path/to/foo)。

パスにジャンプして、何かを実行して、元に戻りたいことがよくあります。これは、 を使用すると簡単に実現できますcd -

ただし、パスにジャンプして、少し CD してから「戻る」場合は、cd -機能しなくなります。

aまた、 dir から始めて、 にジャンプしb、次に にジャンプしc、その後「 に戻って」 ( にb)、さらに「 に戻って」 ( にa)ジャンプしたい場合も機能しません。

戻りたい場所の名前を覚えておく必要がある(つまり、z a「戻る」の代わりに実行できる)のは楽しいことではありません。

pushdおよび は、ディレクトリのスタック内を移動できるようにするために構築されています。 の部分一致の動作をと に統合popdできるかどうか疑問に思っています。zpushdpopd

または autojumpには、cd する代わりにターゲット ディレクトリを指定するコマンド ライン オプションがないようですz。そうでなければ、 を試してみますpushd $(z ...)

答え1

なぜこれを見逃したのかはわかりませんが、それに ing する代わりに、最適な一致をエコーするオプションzがあります。-ecd

これを魚の殻でどのように使うか例を挙げてみます

> pushd (z -e ...)

ze魚の略語を使用してに省略することもできます。閉じ括弧の後ろにカーソルを置くと、z -e略語が自動的に に展開されるように設定する方法があるかどうかはわかりません。pushd (z -e ...)

関連情報