instance method Shell#pushd

pushd(path = nil, &block) -> object[permalink][rdoc][edit]
pushdir(path = nil, &block) -> object

カレントディレクトリをディレクトリスタックにつみ, カレントディレクトリをpathにする. pathが省略されたときには, カレントディレクトリとディレクトリスタックのトップを交換する. イテレータとして呼ばれたときには, ブロック実行中のみpushdする.

[PARAM] path:
カレントディレクトリをpathにする。文字列で指定します。
[PARAM] block:
イテレータとして呼ぶ場合, ブロックを指定します。

動作例

require 'shell'
Shell.verbose = false
sh = Shell.new
sh.pushd("/tmp")
p sh.cwd #=> "/tmp"
sh.pushd("/usr")
p sh.cwd #=> "/usr"
sh.popd
p sh.cwd #=> "/tmp"
sh.pushd("/usr/local"){
  p sh.cwd #=> "/usr/local"
}
p sh.cwd #=> "/tmp"