| 首页 | 新闻 | 网页 | 设计 | 色彩 | 原创 | 视觉 | 素材 | 动漫 | 酷站 | 策划 | 文案 | 访谈 | 运营 | 编程 | 数据库 | 服务器 | 下载 | 图库 | 
您的位置: 幽幽天空 > 网页 > 编程开发 > Perl教程 > 文章正文 用户登录
各种漂亮的鼠标UR
去除头部banner
修改新浪博客上面
Google AdSenser 
Skype为推广员提供
Dotworlds免费提供
Better fonts免费
TinyURL免费缩短网
RealTracker提供免
谁杀死了站长(We

Perl文件及目录操作           

Perl文件及目录操作

作者:佚名 来源:http://www.fanqiang.com 更新:2006-8-25 21:05:35 错误报告 我要投稿

  大多数程序都不是孤立的,它们与它们的环境相互作用。很多的程序也需要通过文件操作实现数据的存贮和交换。 文件句柄(file handle)是Perl程序中为程序和外部世界提供I/O连接的名称。建议全部使用大写字母以示与变量等的区别。特别地,也可以将STDIN/STDOUT/STDERR也认为 是Perl的文件句柄,分别代表标准输入/标准输出/标准错误输出。 

打开及关闭文件 

  Perl的文件操作与C语言极为相似。如: 

open(FILENAME,"abc.txt"); 

  该调用为读文件打开,若为写文件而打开,需在文件名前加上大于号: 

open(FILENAME,">abc.txt"); 

  若要追加至文件尾,可在文件名前加上两个大于号: 

open(FILENAME,">>abc.txt"); 

  以上三种open()格式在成功时返回真,失败时返回假。但程序中通常没有提示,出错时往往会被人们忽略。 通常当需要给出出错提示时,可加入die()函数。例: 

open(OUTFILE,">/tmp/outfile")|| 
die "出错,不能建立/tmp/outfile\n"; 

  当只有open失败时,才会执行die给出出错提示。 

  对文件句柄的操作完成后,可以用close操作符关闭文件。如: 

close(OUTFILE); 

-x 文件测试 

  Perl的文件操作也可以先测试文件是否存在,是否可读写等。如: 

$x="abc.txt"; 
if(-e $x) { #abc.txt是否存在? 
# 存在操作 
} else { 
printf "文件不存在。\n"; 


-e操作符测试文件或目录是否存在。 

  以下为文件测试清单: 



文件测试 测试操作符提供的信息 
-r 文件或目录可读 
-w 文件或目录可写 
-x 文件或目录执行 
-o 文件或目录归用户所有 
-R 文件或目录对真正用户可读 
-W 文件或目录对真正用户可写 
-X 文件或目录对真正用户执行 
-O 文件或目录归真正用户所有 
-e 文件或目录存在 
-z 文件存在且大小为0 
-s 文件或目录存在且不为0(返回字节数) 
-f 文件为普通文件 
-d 文件为目录 
-l 文件为符号链接 
-p 文件为命名管道(FIFO) 
-S 文件为一个套口(socket) 
-b 文件为块特殊文件 
-c 文件为字符特殊文件 
-t 打开tty控制台的文件句柄 
-u 文件或目录是设置用户ID号 
-g 文件或目录是设置用户组ID号 
-k 文件或目录的sticky位置位 
-T 文件是文本文件 
-B 文件是二进制文件 
-M 以天为单位的存在时间 
-A 以天为单位访问时间 
-C 以天为单位同代码更改时间 


删除文件 

  Perl的unlink()操作符可实现删除文件。如: 

unlink("abc.txt"); #删除abc.txt 

文件重命名 

  Perl的rename()操作符可实现文件重命名。如: 

rename("abc","zmd")||die "出错,不能更名"; 

  此时将abc更名为zmd,成功返回真,否则给出出错提示。 

目录操作 

  Perl中处理目录非常类似于处理文件。 

  打开目录句柄: 

opendir(ETC,"/etc")||die "出错,不能打开目录"; 

  关闭目录句柄: 

closedir(ETC); 

  创建目录: 

mkdir("zmd",0777)||die "不能创建zmd目录"; 

  0777为内部权限格式。 

  删除目录: 

rmdir("zmd")||die "不能删除zmd目录"。
文章录入:skyuu    责任编辑:skyuu 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    发表评论:
    姓名:  评 分: 1分 2分 3分 4分 5分
     
  • 严禁发表危害国家安全、政治、黄色淫秽等内容的评论。
  • 用户需对自己在使用幽幽天空服务过程中的行为承担法律责任。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表机友个人观点,与本网站立场无关。