pushd
私はandで複数のディレクトリを使用しました。私はディレクトリスタックに何があるのか見たいときに順序付けられたリストを得るためにエイリアスを使用しました。bash
zsh
dirs
dirs -v
chb$ dirs
0 /Volumes/banister/grosste_daever_gh/2013-03-27/reader
1 /tmp/20130618202713/Library/Internet Plug-Ins
2 ~/code/foo/view/static/css
3 ~/Downloads
エイリアスを使用してコマンドラインにリストされているディレクトリの1つのスタック位置を参照する方法(inbash
またはout)はありますか?zsh
たとえば、次のように入力しないでください。
chb$ cp ~/code/foo/view/static/css/baz.css ~/code/bar/view/static/css/
私は次のように入力します:
chb$ cp <2>baz.css ~/code/bar/view/static/css/
...または他のもの良い。代わりにドル記号と変数名を使用することもできます<n>
。
答え1
Bashはディレクトリスタックを公開します。DIRSTACK
変える。このコマンドを使用してスタックのdirs +2
2番目のエントリを参照することもできます。
より便利には、スタックの上位9項目を参照すること~1
です。~9
したがって、あなたの例は次のように翻訳されます。
chb$ cp ~2/baz.css ~/code/bar/view/static/css/
Zshは同じ~n施設で、スタックはという配列を介して公開されますdirstack
。バッシュdirs +2
はzshprint -r ~2
またはprint -r $dirstack[2]
。
答え2
はい、Bashでは次のようになります。
cp $(dirs +2) ~/code/bar/view/static/css/
はるかに簡単です。
cp ~2 ~/code/bar/view/static/css/