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)

  如果 path 是一个块设备,则返回 true。

  4File::chardev?( path)

  如果 path 是一个字符设备,则返回 true。

  5File::chmod( mode, path...)

  改变指定文件的权限模式。

  6File::chown( owner, group, path...)

  改变指定文件的所有者和所属组。

  7File::ctime( path)

  返回 path 的最后一个 inode 更改时间。

  8File::delete( path...)

  File::unlink( path...)

  删除指定的文件。

  9File::directory?( path)

  如果 path 是一个目录,则返回 true。

  10File::dirname( path)

  返回 path 的目录部分,不包括最后的文件名。

  11File::executable?( path)

  如果 path 是可执行的,则返回 true。

  12File::executable_real?( path)

  如果 path 通过真正的用户权限是可执行的,则返回 true。

  13File::exist?( path)

  如果 path 存在,则返回 true。

  1File::expand_path( path[, dir])

  返回 path 的绝对路径,扩展 ~ 为进程所有者的主目录,~user 为用户的主目录。相对路径是相对于 dir 指定的目录,如果 dir 被省略则相对于当前工作目录。

  14File::file?( path)

  如果 path 是一个普通文件,则返回 true。

  15File::ftype( path)

  返回下列其中一个字符串,表示文件类型:

  file - 普通文件

  directory - 目录

  characterSpecial - 字符特殊文件

  blockSpecial - 块特殊文件

  fifo - 命名管道(FIFO)

  link - 符号链接

  socket - Socket

  unknown - 未知的文件类型

  16File::grpowned?( path)

  如果 path 由用户的所属组所有,则返回 true。

  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)

  如果 path 由有效的用户所有,则返回 true。

  23File::pipe?( path)

  如果 path 是一个管道,则返回 true。

  24File::readable?( path)

  如果 path 是可读的,则返回 true。

  25File::readable_real?( path)

  如果 path 通过真正的用户权限是可读的,则返回 true。

  25File::readlink( path)

  返回 path 所指向的文件。

  26File::rename( old, new)

  改变文件名 old 为 new。

  27File::setgid?( path)

  如果设置了 path 的 set-group-id 权限位,则返回 true。

  28File::setuid?( path)

  如果设置了 path 的 set-user-id 权限位,则返回 true。

  29File::size( path)

  返回 path 的文件大小。

  30File::size?( path)

  返回 path 的文件大小,如果为 0 则返回 nil。

  31File::socket?( path)

  如果 path 是一个 socket,则返回 true。

  32File::split( path)

  返回一个数组,包含 path 的内容,path 被分成 File::dirname(path) 和 File::basename(path)。

  33File::stat( path)

  返回 path 上带有信息的 File::Stat 对象。

  34File::sticky?( path)

  如果设置了 path 的 sticky 位,则返回 true。

  35File::symlink( old, new)

  创建一个指向文件 old 的符号链接。

  36File::symlink?( path)

  如果 path 是一个符号链接,则返回 true。

  37File::truncate( path, len)

  截断指定的文件为 len 字节。

  38File::unlink( path...)

  删除 path 给定的文件。

  39File::umask([ mask])

  如果未指定参数,则为该进程返回当前的 umask。如果指定了一个参数,则设置了 umask,并返回旧的 umask。

  40File::utime( atime, mtime, path...)

  改变指定文件的访问和修改时间。

  41File::writable?( path)

  如果 path 是可写的,则返回 true。

  42File::writable_real?( path)

  如果 path 通过真正的用户权限是可写的,则返回 true。

  43File::zero?( path)

  如果 path 的文件大小是 0,则返回 true。

  实例方法

  假设 f 是 File 类的一个实例:

  序号方法 & 描述

  1f.atime

  返回 f 的最后访问时间。

  2f.chmode( mode)

  改变 f 的权限模式。

  3f.chown( owner, group)

  改变 f 的所有者和所属组。

  4f.ctime

  返回 f 的最后一个 inode 更改时间。

  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 字节。(编辑:雷林鹏 来源:网络)

雷林鹏分享:Ruby File 类和方法的更多相关文章

  1. 雷林鹏分享:C# 类(Class)

    C# 类(Class) 当您定义一个类时,您定义了一个数据类型的蓝图.这实际上并没有定义任何的数据,但它定义了类的名称意味着什么,也就是说,类的对象由什么组成及在这个对象上可执行什么操作.对象是类的实 ...

  2. 雷林鹏分享:Ruby 循环

    Ruby 循环 Ruby 中的循环用于执行相同的代码块若干次.本章节将详细介绍 Ruby 支持的所有循环语句. Ruby while 语句 语法 while conditional [do] code ...

  3. 雷林鹏分享:Ruby Dir 类和方法

    Ruby Dir 类和方法 Dir 是一个表示用于给出操作系统中目录中的文件名的目录流.Dir 类也拥有与目录相关的操作,比如通配符文件名匹配.改变工作目录等. 类方法 序号方法 & 描述 1 ...

  4. 雷林鹏分享:Ruby 文件的输入与输出

    Ruby 文件的输入与输出 Ruby 提供了一整套 I/O 相关的方法,在内核(Kernel)模块中实现.所有的 I/O 方法派生自 IO 类. 类 IO 提供了所有基础的方法,比如 read. wr ...

  5. 雷林鹏分享:Ruby CGI方法

    Ruby CGI方法 以下为CGI类的方法列表: 序号方法描述 1CGI::new([ level="query"]) 创建 CGI 对象.query可以是以下值: query: ...

  6. 雷林鹏分享:Ruby 类和对象

    Ruby 类和对象 Ruby 是一种完美的面向对象编程语言.面向对象编程语言的特性包括: 数据封装 数据抽象 多态性 继承 这些特性将在 面向对象的 Ruby 中进行讨论. 一个面向对象的程序,涉及到 ...

  7. 雷林鹏分享:Ruby 类案例

    Ruby 类案例 下面将创建一个名为 Customer 的 Ruby 类,您将声明两个方法: display_details:该方法用于显示客户的详细信息. total_no_of_customers ...

  8. 雷林鹏分享:Ruby 方法

    Ruby 方法 Ruby 方法与其他编程语言中的函数类似.Ruby 方法用于捆绑一个或多个重复的语句到一个单元中. 方法名应以小写字母开头.如果您以大写字母作为方法名的开头,Ruby 可能会把它当作常 ...

  9. 雷林鹏分享:Ruby 异常

    Ruby 异常 异常和执行总是被联系在一起.如果您打开一个不存在的文件,且没有恰当地处理这种情况,那么您的程序则被认为是低质量的. 如果异常发生,则程序停止.异常用于处理各种类型的错误,这些错误可能在 ...

随机推荐

  1. RPM命令详解(安装、升级、卸载)

    rpm 常用命令1.安装一个包 # rpm -ivh 2.升级一个包 # rpm -Uvh 3.卸载一个包 # rpm -e 4.安装参数 --force 即使覆盖属于其它包的文件也强迫安装 --no ...

  2. opencv学习笔记——minMaxIdx函数的含义及用法

    opencv中有时需要对Mat数据需要对其中的数据求取最大值和最小值.opencv提供了直接的函数 CV_EXPORTS_W void minMaxLoc(InputArray src, CV_OUT ...

  3. mysql_commit() COMMIT ROLLBACK 提交 回滚 连接释放

    MySQL :: MySQL 8.0 Reference Manual :: 28.7.7.6 mysql_commit() https://dev.mysql.com/doc/refman/8.0/ ...

  4. Jmeter,常见参数 vars、prev、ctx 、props 类的api--beanshell

    http://www.cnblogs.com/fnng/p/5827577.html---------jmeter 性能测试 jmeter常见参数 vars.prev.ctx .props 类的api ...

  5. Strategic Game--hdu1054(最小覆盖点)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1054 求最小覆盖点,也就是求最大匹配,要用邻接表写,不然会TLE:当然也可以用HK算法: #inclu ...

  6. 在SQL Server里如何进行数据页级别的恢复

    在SQL Server里如何进行页级别的恢复 关键词:数据页修复 在今天的文章里我想谈下每个DBA应该知道的一个重要话题:在SQL Server里如何进行页级别还原操作.假设在SQL Server里你 ...

  7. centos MySQL主从配置 ntsysv chkconfig setup命令 配置MySQL 主从 子shell MySQL备份 kill命令 pid文件 discuz!论坛数据库读写分离 双主搭建 mysql.history 第二十九节课

    centos  MySQL主从配置 ntsysv   chkconfig  setup命令  配置MySQL 主从 子shell  MySQL备份  kill命令  pid文件  discuz!论坛数 ...

  8. 安装memcached扩展 验证过了可行

    . 安装libmemached 复制代码 代码如下: wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached ...

  9. 2018-2019 ACM-ICPC Pacific Northwest Regional Contest (Div. 1) Solution

    A:Exam Solved. 温暖的签. #include<bits/stdc++.h> using namespace std; ; int k; char str1[maxn], st ...

  10. 2016-2017 CT S03E07: Codeforces Trainings Season 3 Episode 7

    B. Pen Pineapple Apple Pen Solved. 题意:将一个序列合并成一个数. 思路:分类讨论一下, 水. #include<bits/stdc++.h> using ...