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

FileПредставляет объект, связанный с обычным файлом.stdioобъект. open возвращает экземпляр этого класса для обычного файла.

Методы класса

Нет.Метод и описание
1File::atime( path)
Возвращает дляpathвремя последнего доступа
2File::basename( path[, suffix])
Возвращаетpathимя файла в конце. Если указанsuffix, то он удаляется с конца имени файла.
Например: File.basename("/home/users/bin/ruby.exe") #=> "ruby.exe"
3File::blockdev?( path)
Возвращает true, если path является блочным устройством.
4File::chardev?( path)
Возвращает true, если path является символьным устройством.
5File::chmod( mode, path...)
Изменяет режим прав доступа указанного файла.
6File::chown( owner, group, path...)
Изменяет владельца и группу указанного файла.
7File::ctime( path)
Возвращает время последнего изменения inode для path.
8File::delete( path...)
File::unlink( path...)

Удаляет указанный файл.
9File::directory?( path)
Возвращает true, если path является каталогом.
10File::dirname( path)
Возвращает часть path, соответствующую каталогу, исключая конечное имя файла.
11File::executable?( path)
Возвращает true, если path является исполняемым.
12File::executable_real?( path)
Возвращает true, если path может быть исполнен реальным пользователем.
13File::exist?( path)
Возвращает true, если path существует.
1File::expand_path( path[, dir])
Возвращает абсолютный путь path, раскрывая ~ в домашний каталог владельца процесса, а ~user — в домашний каталог пользователя. Относительные пути задаются относительно каталога, указанного в dir, или текущего рабочего каталога, если dir опущен.
14File::file?( path)
Возвращает true, если path — обычный файл.
15File::ftype( path)
Возвращает одну из следующих строк, указывающую тип файла:
  • file- обычный файл
  • directory- каталог
  • characterSpecial- специальный символьный файл
  • blockSpecial- специальный блочный файл
  • fifo- именованный канал (FIFO)
  • link- символическая ссылка
  • socket - Сокет
  • unknown- неизвестный тип файла
16File::grpowned?( path)
Возвращает true, если path принадлежит группе пользователя.
17File::join( item...)
Возвращает строку, образованную путём объединения указанных элементов, разделённых File::Separator.
Например: File::join("", "home", "usrs", "bin") # => "/home/usrs/bin"
18File::link( old, new)
Создаёт жёсткую ссылку на файл old.
19File::lstat( path)
То же, что и stat, но возвращает информацию о самой символической ссылке, а не о файле, на который она указывает.
20File::mtime( path)
Возвращает время последнего изменения path.
21File::new( path[, mode="r"])
File::open( path[, mode="r"])
File::open( path[, mode="r"]) {|f| ...}

Открывает файл. Если указан блок, блок выполняется с новым файлом, переданным в качестве аргумента. При выходе из блока файл автоматически закрывается. Эти методы отличаются от Kernel.open тем, что даже если path начинается с |, следующая строка не выполняется как команда.
22File::owned?( path)
Возвращает true, если path принадлежит эффективному пользователю.
23File::pipe?( path)
Возвращает true, если path является каналом.
24File::readable?( path)
Возвращает true, если path доступен для чтения.
25File::readable_real?( path)
Возвращает true, если path доступен для чтения реальным пользователем.
25File::readlink( path)
Возвращает файл, на который указывает path.
26File::rename( old, new)
Изменяет имя файла old на new.
27File::setgid?( path)
Возвращает true, если установлен бит разрешения set-group-id у path.
28File::setuid?( path)
Возвращает true, если установлен бит разрешения set-user-id у path.
29File::size( path)
Возвращает размер файла path.
30File::size?( path)
Возвращает размер файла path или nil, если он равен нулю.
31File::socket?( path)
Возвращает true, если path является сокетом.
32File::split( path)
Возвращает массив, содержащий компоненты path, разделённые на File::dirname(path) и File::basename(path).
33File::stat( path)
Возвращает объект File::Stat с информацией о path.
34File::sticky?( path)
Возвращает true, если установлен sticky-бит для path.
35File::symlink( old, new)
Создаёт символическую ссылку на файл old.
36File::symlink?( path)
Возвращает true, если path — символическая ссылка.
37File::truncate( path, len)
Усекает указанный файл до len байт.
38File::unlink( path...)
Удаляет файл, заданный path.
39File::umask([ mask])
Если аргумент не указан, возвращает текущую umask для процесса. Если аргумент указан, устанавливает umask и возвращает старую umask.
40File::utime( atime, mtime, path...)
Изменяет время доступа и время модификации указанного файла.
41File::writable?( path)
Возвращает true, если path доступен для записи.
42File::writable_real?( path)
Возвращает true, если path доступен для записи реальному пользователю.
43File::zero?( path)
Возвращает true, если размер файла path равен нулю.

Методы экземпляра

ПредположитьfДаFileэкземпляр класса:

Нет.Метод и описание
1f.atime
Возвращает время последнего доступа к f.
2f.chmode( mode)
Изменяет режим прав доступа f.
3f.chown( owner, group)
Изменяет владельца и группу f.
4f.ctime
Возвращает время последнего изменения inode f.
5f.flock( op)
Вызывает flock(2). op может быть 0, логическим значением или одной из констант класса File LOCK_EX, LOCK_NB, LOCK_SH и LOCK_UN.
6f.lstat
То же, что и stat, но возвращает информацию о самой символической ссылке, а не о файле, на который она указывает.
7f.mtime
Возвращает время последнего изменения f.
8f.path
Возвращает путь, использованный для создания f.
9f.reopen( path[, mode="r"])
Заново открывает файл.
10f.truncate( len)
Усекает f до len байтов.
Другие расширения