|
| 1 | +--- |
| 2 | +title: y と z でターミナルのディレクトリ移動を効率化 |
| 3 | +tags: |
| 4 | + - Terminal |
| 5 | + - fzf |
| 6 | + - cd |
| 7 | + - zoxide |
| 8 | + - yazi |
| 9 | +private: false |
| 10 | +updated_at: '2025-03-19T19:46:47+09:00' |
| 11 | +id: c11e8e1464e926a04894 |
| 12 | +organization_url_name: fukuokaex |
| 13 | +slide: false |
| 14 | +ignorePublish: false |
| 15 | +--- |
| 16 | + |
| 17 | +[zoxide]: https://github.com/ajeetdsouza/zoxide |
| 18 | +[yazi]: https://yazi-rs.github.io/docs/quick-start |
| 19 | +[fzf]: https://github.com/junegunn/fzf |
| 20 | +[TUI]: https://ja.wikipedia.org/wiki/テキストユーザインタフェース |
| 21 | + |
| 22 | +## はじめに |
| 23 | + |
| 24 | +ターミナルでのディレクトリ移動は、開発の生産性に直結する重要な操作です。 |
| 25 | +一般的には `cd` コマンドを使いますが、より効率的な代替手段もあります。 |
| 26 | + |
| 27 | +そこで紹介するのが `y` → `z` ワークフロー です。 |
| 28 | +これを活用することで、ディレクトリ移動やファイル操作をよりスムーズに行えます。 |
| 29 | + |
| 30 | +--- |
| 31 | + |
| 32 | +## `y` → `z` ワークフロー |
| 33 | + |
| 34 | +`y` と `z` に特別な意味はありませんが、アルファベット順で `c` と `d` のように連続しているため、`cd` の代替として直感的に覚えやすいです。 |
| 35 | + |
| 36 | +以下のツールを組み合わせて利用します。 |
| 37 | + |
| 38 | +- [zoxide]: 頻繁に使うディレクトリを記憶し、柔軟な移動を可能にする `cd` の代替ツール |
| 39 | +- [yazi]: [zoxide] と統合可能な 高速 TUI ファイルマネージャ |
| 40 | +- [fzf]: 対話的にディレクトリを検索できる ファジーファインダー |
| 41 | + |
| 42 | +--- |
| 43 | + |
| 44 | +## zoxide を使ったディレクトリ移動 |
| 45 | + |
| 46 | +[zoxide]は、頻繁に使うディレクトリを自動的に記憶し、効率的なディレクトリ移動を可能にするツールです。 |
| 47 | +`cd` の代わりに `z` コマンドを使うことで、ディレクトリ移動をスムーズに行えます。 |
| 48 | + |
| 49 | +### `z` コマンド |
| 50 | + |
| 51 | +例えば、`~/long/path/to/project` に移動したい場合、`cd ~/long/path/to/project` と毎回入力するのは面倒です。 |
| 52 | +そこで `z project` を使えば、簡単に目的のディレクトリへ移動できます。 |
| 53 | + |
| 54 | +```sh |
| 55 | +z project # 「project」ディレクトリへ即移動 |
| 56 | +``` |
| 57 | + |
| 58 | +### `zi` コマンド([zoxide] + [fzf]) |
| 59 | + |
| 60 | +`zi` を使うと、[zoxide] で記憶されたディレクトリを[fzf] で対話的に選択して移動できます。 |
| 61 | +ディレクトリ名の一部を入力するだけで、瞬時に目的地のディレクトリを選べるのが便利です。 |
| 62 | + |
| 63 | +```sh |
| 64 | +zi # 記憶されたディレクトリをファジー検索して移動 (`Esc` または `Ctrl+C` でキャンセル) |
| 65 | +``` |
| 66 | + |
| 67 | +--- |
| 68 | + |
| 69 | +## yazi を使ったファイル操作とディレクトリ移動 |
| 70 | + |
| 71 | +[yazi]は、軽量・高速・カスタマイズ可能な[TUI]ファイルマネージャです。 |
| 72 | +[zoxide]を統合することができます。 |
| 73 | + |
| 74 | +### `y` コマンド |
| 75 | + |
| 76 | +`y` コマンドで [yazi] を開いた後に `z` キーを押すと、`zi` コマンドと同様に [zoxide] の履歴からディレクトリを素早く選んで移動できます。 |
| 77 | +そのまま[yazi] を閉じれば、TUI 内で移動したディレクトリにターミナルのカレントディレクトリも切り替わります。 |
| 78 | +ファイルを一覧しながら目的のディレクトリを探し、終了後にスムーズに作業を続けられるのが便利です。 |
| 79 | + |
| 80 | +```sh |
| 81 | +y # yazi を開く (終了するには `q` を押す) |
| 82 | +``` |
| 83 | + |
| 84 | +`y` コマンドは、ファイルの閲覧や操作をしたいときに便利ですが、 |
| 85 | +単にディレクトリを移動するだけなら、ターミナルで直接`z`や`zi`を使う方が速い場合もあります。 |
| 86 | + |
| 87 | +--- |
| 88 | + |
| 89 | +## まとめ |
| 90 | + |
| 91 | +`y` → `z` ワークフローを活用すると、ターミナルでのディレクトリ移動が効率化できます。 |
| 92 | + |
| 93 | +- `z`([zoxide])を使えば、頻繁に使うディレクトリへ素早く移動 |
| 94 | +- `zi`([zoxide] + [fzf])なら、ディレクトリを対話的に検索して移動 |
| 95 | +- `y`([yazi])なら、視覚的にディレクトリを探索しながら管理可能 |
| 96 | + |
| 97 | +TUI ファイルマネージャが不要な場面では `z` や `zi` を使い、ファイルの閲覧や操作が必要なときは `y` を活用すると便利です。 |
| 98 | + |
| 99 | + |
0 commit comments