Dir類將目錄流作為表示底層文件系統(tǒng)中目錄的對(duì)象。
目錄使用Dir類進(jìn)行處理。
要?jiǎng)?chuàng)建一個(gè)目錄,使用mkdir命令。 如果需要,可以授予目錄權(quán)限。
語(yǔ)法:
Dir.mkdir "dirName" , permission
示例:
Dir.mkdir "project"
執(zhí)行上面代碼后,將在當(dāng)前工作目錄下創(chuàng)建了一個(gè)目錄“project”。
檢查目錄是否存在? 使用方法。
語(yǔ)法:
puts Dir.exists? "dirName"
示例:
#!/usr/bin/ruby
# file: directories-exists.rb
Dir.mkdir "project"
puts Dir.exists? "project"
puts Dir.exists? "pproject"
執(zhí)行上面代碼,得到以下結(jié)果 -
F:\worksp\ruby>ruby directories-exists.rb
true
false
F:\worksp\ruby>
在上面示例中,首先創(chuàng)建一個(gè)名稱為:project 的目錄,因此第一個(gè)語(yǔ)句判斷目錄是存在的,它返回true,而在第二個(gè)語(yǔ)句中,pproject目錄是不存在的一個(gè)目錄,所以執(zhí)行結(jié)果為:false。
想要知道當(dāng)前工作目錄,可使用pwd方法。
語(yǔ)法:
puts Dir.pwd
示例:
F:\worksp\ruby>irb
irb(main):001:0> puts Dir.pwd
F:/worksp/ruby
=> nil
irb(main):002:0>
要?jiǎng)h除目錄,使用rmdir,unlink或delete方法。這幾個(gè)方法對(duì)Ruby目錄執(zhí)行相同的功能。
語(yǔ)法:
Dir.rmdir "dirName"
示例:
#!/usr/bin/ruby
# file: directories-remove.rb
Dir.rmdir "project"
puts Dir.exists? "project"
執(zhí)行上面代碼,輸出結(jié)果如下 -
F:\worksp\ruby>ruby directories-remove.rb
false
F:\worksp\ruby>
當(dāng)該目錄不存在時(shí),Dir.exists方法返回false。