您的位置:首页 > 其它

Perl学习笔记 No.11

2010-04-23 09:13 183 查看
1. die "Oops!A file named '$filename' already existed!"

if -e $filename

使用-e选项,在系统创建文件前检测文件是否已存在

2. warn “Config file is looking pretty old! /n ”

if -M CONFIG > 28; #CONFIG是一个文件句柄

使用-M选项,检查某个文件是否长时间未被修改...

3. if -s $filename > 100_100 and -A $filename > 90;文件大于100KB,并且90天未被访问

4. Unix 文件系统包括几种类型,分别可由-f , - d, - l, -S, - p, -b, 以及- c 检测,任何一种必属于其中之一 .

5. my ($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $mtime, $ctime, $blksize, $blockes)

= stat($filename);

这些名字表明了 stat 返回的值的含义.

$dev 和 $ino

文件的设备号和索引节点号.它们组成了文件的“ 牌照(license plate)”. 即便它有多个名字(硬连接 (hard link),设

备号和索引节点号的组合仍是唯一的。)

$mode

文件的权限位以及一些其它的位.比如0755.

$nlink

文件或目录的(硬 )连接数.是指被检测项真实名字的个数 .对于目录其值总是 2 或者更大的数,而对于文件(通常)

是 1.

$uid 和 $gid

指文件所有权的 user ID 及 group ID

$size

返回其大小.单位:字节.同 -s文件检测项相同.

$atime, $mtime, 及 $ctime

这三个时间,它们按照系统的时间格式 :32 位 ,表示从某个时刻到现在所经过的秒数,这个时刻是记录系统时间的一

个任意值.在 Unix 和别的某些系统中,这个时刻从世界时间 1970 年第一个午夜开始,但在某些系统中 ,这个时刻可

能不同.

6. my $timestamp = 1180630098;

my $date = localtime $timestamp; #这样可以转换成可阅读的模式"The May 31 09:48:18 2007"

在列表上下文中localtime返回一列值

my($sec, $min, $hour, $day, $mon, $year, $wday, $yday, $isdst)

= localtime $timestamp;

$mon 是一个表示月份的数字,范围是 0 到 11
,其在月份名字的数组中作为索引值是比较方便的 .$year 是指从 1900 现在的年份数,因此,需要加上 1900 来得到实际的年数.$wday 的值是从 0 (星期天 )到 6 (星期六 ). $yday 指一年中的具体天数,从0(1 月 1 日 )到 364 或 365(12 月 31 )。







文件检测选项及其含义

检测选项 含义

-r 文件或目录对此( 有效的) 用户( effective user) 或组是可读的

-w 文件或目录对此( 有效的) 用户或组是可写的

-x 文件或目录对此( 有效的) 用 户或组是可执行的

-o 文件或目录由本( 有效的) 用户所有

-R 文件或目录对此用户 (real user)或组是可读的

-W 文件或目录对此用户或组是可写的

-X 文件或目录对此用户或组是可执行的

-O 文件或目录由本用户所有

-e 文件或目录名存在

-z 文件存在,大小为 0(目录恒为 false)

-s 文件或目录存在, 大小大于 0(值为文件的大小 ,单位 :字节)

-f 为普通文本

-d 为目录

-l 为符号链接

-S 为 socket

-p 为管道 (Entry is a named pipe(a “ ” fifo ))

-b 为 block -special 文件(如挂载磁盘 )

-c 为 character- special 文件(如 I/O 设备)

-u setuid 的文件或目录

-g setgid 的文件或目录

-k File or directory has the sticky bit set

-t 文件句柄为 TTY (系统函数 isatty()的返回结果;不能对文件名使用这个测试 )

-T 文件有些像“ 文本”文件

-B 文件有些像“ 二进制” 文件

-M 修改的时间( 单位:天 )

-A 访问的时间( 单位:天 )

-C 索引节点修改时间(单位: 天 )
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: