概要
Dir.chdir
詳細
Dir.chdirはディレクトリを移動します。
chdir chdir(path) -> 0 chdir {|path| ... } -> object chdir(path) {|path| ... } -> object
pathで指定したディレクトリに移動します。
path省略時はホームディレクトリに移動します。
ブロック指定時はブロックの範囲内のみで移動が適用されます。
コード
/home/sample/20131027_chdir ディレクトリで作業している前提
# encoding: utf-8 require "pp" # ディレクトリ作成 Dir.mkdir "hoge" unless File.exists? "hoge" Dir.chdir './hoge' do `echo hoge > hoge.txt` `echo hige > hige.txt` `echo hage > hage.txt` Dir.mkdir "hoge" unless File.exists? "hoge" Dir.chdir './hoge' do `echo hoge > hoge.txt` `echo hige > hige.txt` `echo hage > hage.txt` end end def print_line puts "-------------------------------------------" end puts `tree` print_line puts Dir.pwd print_line Dir.chdir "hoge" puts Dir.pwd print_line Dir.chdir {puts Dir.pwd} print_line puts Dir.pwd print_line Dir.chdir puts Dir.pwd
出力確認
└─hoge │ hage.txt │ hige.txt │ hoge.txt │ └─hoge hage.txt hige.txt hoge.txt ------------------------------------------- /home/sample/20131027_chdir ------------------------------------------- /home/sample/20131027_chdir/hoge ------------------------------------------- /home/sample ------------------------------------------- /home/sample/20131027_chdir/hoge ------------------------------------------- /home/sample