Kelas dan kaedah Ruby Dir


Dir ialah strim direktori yang mewakili nama fail dalam direktori dalam sistem pengendalian. Kelas Dir juga mempunyai operasi berkaitan direktori, seperti padanan nama fail kad bebas, menukar direktori kerja, dsb.

Kaedah kelas

Nombor siri Kaedah & Penerangan
1
序号方法 & 描述
1Dir[pat]
Dir::glob( pat)

返回一个数组,包含与指定的通配符模式 pat 匹配的文件名:
  • * - 匹配包含 null 字符串的任意字符串

  • ** - 递归地匹配任意字符串

  • ? - 匹配任意单个字符

  • [...] - 匹配封闭字符中的任意一个

  • {a,b...} - 匹配字符串中的任意一个

Dir["foo.*"] # 匹配 "foo.c"、 "foo.rb" 等等
Dir["foo.?"] # 匹配 "foo.c"、 "foo.h" 等等
2Dir::chdir( path)
改变当前目录。
3Dir::chroot( path)
改变根目录(只允许超级用户)。并不是在所有的平台上都可用。
4Dir::delete( path)
删除 path 指定的目录。目录必须是空的。
5Dir::entries( path)
返回一个数组,包含目录 path 中的文件名。
6Dir::foreach( path) {| f| ...}
为 path 指定的目录中的每个文件执行一次块。
7Dir::getwd
Dir::pwd

返回当前目录。
8Dir::mkdir( path[, mode=0777])
创建 path 指定的目录。权限模式可被 File::umask 的值修改,在 Win32 的平台上会被忽略。
9Dir::new( path)
Dir::open( path)
Dir::open( path) {| dir| ...}

返回 path 的新目录对象。如果 open 给出一个块,则新目录对象会传到该块,块会在终止前关闭目录对象。
10Dir::pwd
参见 Dir::getwd。
11Dir::rmdir( path)
Dir::unlink( path)
Dir::delete( path)

删除 path 指定的目录。目录必须是空的。
Dir[pat]
Dir::glob( pat)<🎜>
Mengembalikan tatasusunan yang mengandungi nama fail yang sepadan dengan tepukan corak kad bebas yang ditentukan:
  • <🎜><🎜>*<🎜> - sepadan dengan mana-mana rentetan yang mengandungi Rentetan nol <🎜>
  • <🎜><🎜>**<🎜> - Memadankan mana-mana rentetan secara rekursif <🎜>
  • <🎜><🎜>?<🎜> - Memadankan mana-mana aksara tunggal <🎜 >
  • <🎜><🎜>[...]<🎜> - Memadankan mana-mana satu daripada aksara yang disertakan <🎜>
  • <🎜> <🎜>{a,b ...}<🎜> - Padankan mana-mana satu dalam rentetan <🎜>
Dir["foo.*"] # Padankan "foo.c", " foo.rb" dsb.
Dir["foo.?"] # Padankan "foo.c", "foo.h" dsb.
2<🎜> Dir::chdir( path)<🎜>
Tukar direktori semasa.
3<🎜>Dir::chroot( path)<🎜>
Tukar direktori akar (hanya pengguna super dibenarkan) . Tidak tersedia pada semua platform.
4<🎜>Dir::delete( path)<🎜>
Padam direktori yang ditentukan oleh laluan. Direktori mesti kosong.
5<🎜>Dir::entry( path)<🎜>
Mengembalikan tatasusunan yang mengandungi nama fail dalam laluan direktori .
6<🎜>Dir::foreach( laluan) {| ...}<🎜>
Nyatakan untuk laluan Jalankan blok sekali untuk setiap fail dalam direktori.
7<🎜>Dir::getwd
Dir::pwd<🎜>
Kembali ke direktori semasa.
8<🎜>Dir::mkdir( path[, mode=0777])<🎜>
Buat direktori yang ditentukan oleh laluan . Mod kebenaran boleh diubah suai dengan nilai File::umask dan diabaikan pada platform Win32.
9<🎜>Dir::new( path)
Dir::open( path)
Dir:: open( path) {|. dir|. ...}<🎜>
Mengembalikan objek direktori baharu laluan. Jika buka diberi blok, objek direktori baharu dihantar ke blok, dan blok itu menutup objek direktori sebelum ditamatkan.
10<🎜>Dir::pwd<🎜>
Lihat Dir::getwd.
11<🎜>Dir::rmdir( path)
Dir::unlink( path)
Dir:: delete( path)<🎜>
Padam direktori yang ditentukan oleh laluan. Direktori mesti kosong.

Kaedah contoh

Anggapkan bahawa d ialah tika bagi kelas Dir:

< tr class =" firstRow">< td>
Nombor siriKaedah & Perihalan
1
序号方法 & 描述
1d.close
关闭目录流。
2d.each {| f| ...}
为 d 中的每一个条目执行一次块。
3d.pos
d.tell
返回 d 中的当前位置。
4d.pos= offset
设置目录流中的位置。
5d.pos= pos
d.seek(pos)

移动到 d 中的某个位置。pos 必须是一个由 d.pos 返回的值或 0。
6d.read
返回 d 的下一个条目。
7d.rewind
移动 d 中的位置到第一个条目。
8d.seek(po s)
参见 d.pos=pos。
9d.tell
参见 d.pos。
d.close

Tutup strim direktori. 2<🎜>d.setiap {| ...}<🎜>
Untuk setiap entri dalam d Laksanakan sekat sekali. 3<🎜>d.pos<🎜>
d.tell
Kembalikan kedudukan semasa dalam d. 4<🎜>d.pos= offset<🎜>
Tetapkan kedudukan dalam strim direktori. 5<🎜>d.pos= pos
d.seek(pos)<🎜>
Alih ke d di suatu tempat. pos mestilah nilai yang dikembalikan oleh d.pos atau 0. 6<🎜>d.read<🎜>
Mengembalikan entri seterusnya d. 7<🎜>d.rewind<🎜>
Alihkan kedudukan dalam d ke entri pertama. 8<🎜>d.seek(po s)<🎜>
Lihat d.pos=pos. 9<🎜>d.tell<🎜>
Lihat d.pos. <🎜>