# Ruby Dir 类和方法
**Dir** | 是一个表示用于给出操作系统中目录中的文件名的目录流。Dir 类也拥有与目录相关的操作,比如通配符文件名匹配、改变工作目录等。
## 类方法
| 方法 | 描述 |
| --- | --- |
| **Dir[pat] Dir::glob( pat)** | 返回一个数组,包含与指定的通配符模式 pat 匹配的文件名: **\*** - 匹配包含 null 字符串的任意字符串 **\*\*** - 递归地匹配任意字符串 **?** - 匹配任意单个字符 **[...]** - 匹配封闭字符中的任意一个 **{a,b...}** - 匹配字符串中的任意一个 Dir["foo.*"] # 匹配 "foo.c"、 "foo.rb" 等等 Dir["foo.?"] # 匹配 "foo.c"、 "foo.h" 等等 |
| **Dir::chdir( path)** | 改变当前目录。 |
| **Dir::chroot( path)** | 改变根目录(只允许超级用户)。并不是在所有的平台上都可用。 |
| **Dir::delete( path)** | 删除 path 指定的目录。目录必须是空的。 |
| **Dir::entries( path)** | 返回一个数组,包含目录 path 中的文件名。 |
| **Dir::foreach( path) {| f| ...}** | 为 path 指定的目录中的每个文件执行一次块。 |
| **Dir::getwd Dir::pwd** | 返回当前目录。 |
| **Dir::mkdir( path[, mode=0777])** | 创建 path 指定的目录。权限模式可被 File::umask 的值修改,在 Win32 的平台上会被忽略。 |
| **Dir::new( path) Dir::open( path) Dir::open( path) {| dir| ...}** | 返回 path 的新目录对象。如果 open 给出一个块,则新目录对象会传到该块,块会在终止前关闭目录对象。 |
| **Dir::pwd** | 参见 Dir::getwd。 |
| **Dir::rmdir( path) Dir::unlink( path) Dir::delete( path)** | 删除 path 指定的目录。目录必须是空的。 |
## 实例方法
假设 **d** 是 ** |Dir** 类的一个实例:
| 方法 | 描述 |
| --- | --- |
| **d.close** | 关闭目录流。 |
| **d.each {| f| ...}** | 为 d 中的每一个条目执行一次块。 |
| **d.pos** | d.tell 返回 d 中的当前位置。 |
| **d.pos= offset** | 设置目录流中的位置。 |
| **d.pos= pos d.seek(pos)** | 移动到 d 中的某个位置。pos 必须是一个由 d.pos 返回的值或 0。 |
| **d.read** | 返回 d 的下一个条目。 |
| **d.rewind** | 移动 d 中的位置到第一个条目。 |
| **d.seek(po s)** | 参见 d.pos=pos。 |
| **d.tell** | 参见 d.pos。 |
- Ruby 基础
- Ruby 简介
- Ruby 环境
- Ruby 安装 - Unix
- Ruby 安装 - Windows
- Ruby 命令行选项
- Ruby 环境变量
- Ruby 语法
- Ruby 数据类型
- Ruby 类和对象
- Ruby 类案例
- Ruby 变量
- Ruby 运算符
- Ruby 注释
- Ruby 判断
- Ruby 循环
- Ruby 方法
- Ruby 块
- Ruby 模块(Module)
- Ruby 字符串(String)
- Ruby 数组(Array)
- Ruby 哈希(Hash)
- Ruby 日期 & 时间(Date & Time)
- Ruby 范围(Range)
- Ruby 迭代器
- Ruby 文件的输入与输出
- Ruby File 类和方法
- Ruby Dir 类和方法
- Ruby 异常
- Ruby 高级
- Ruby 面向对象
- Ruby 正则表达式
- Ruby 数据库访问 - DBI 教程
- Ruby CGI 编程
- Ruby CGI方法
- Ruby CGI Cookies
- Ruby CGI Sessions
- Ruby 发送邮件 - SMATP
- Ruby Socket 编程
- Ruby XML, XSLT 和 XPath 教程
- Ruby Web Services 应用 - SOAP4R
- Ruby 多线程
- 免责声明