zshのビルトインコマンドcd

bashとかと違って第二引数を与えられるのを発見。
下のコマンドでカレントディレクトリの絶対パス中のOLDをNEWに置換したディレクトリに移動できる。

% cd OLD NEW

つまり

% cd /usr/local
% cd local bin
% pwd
/usr/bin

削除するときは空文字列で。

% cd /usr/local/bin
% cd local ""
% pwd
/usr/bin

意外と使えるかも。

もう一つ

-P をつけるとシンボリックリンクを解決してcdできる。

% ln -s dir symlink
% cd -P symlink
% pwd 
/home/user/dir

逆に明示的にシンボリックリンクとしてcdする場合は -L

% ln -s dir symlink
% cd -L symlink
% pwd 
/home/user/symlink