English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Класс Dir и методы Ruby

Dir Это поток каталога, используемый для предоставления имен файлов в каталоге операционной системы. Класс Dir также имеет операции, связанные с каталогом, такие как соответствие шаблону имен файлов с помощью подстановки и изменение текущего каталога.

Статический метод

НомерМетоды и описание
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. Каталог должен быть пустым.

Пример метода

Предположим d Является Dir Пример класса:

НомерМетоды и описание
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.