Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->编程语言 ->Perl ->Perl文件及目录操作
  相关分类: 
ASP
ViualBasic
UML / Rational Rose
PHP4/PHP5
Perl
JAVA/JSP教程
Delphi
ColdFusion
CGI
C/C++
ASP.NET
XML
  站内搜索: 
热门文章排行
热门文章排行 Perl的基本输入输出(06-05)
Perl文件及目录操作(06-05)
Perl语言全面编译(二)(06-05)
Perl常用系统函数(06-05)
用Perl来分析并生成中文Excel文件(06-05)
精采文章排行
精采文章排行 使用Perl连接Mysql数据库(06-05)
用Perl来分析并生成中文Excel文件(06-05)
受限制环境安装Perl模块方法(06-05)
PerlCookbook2介绍(06-05)
《极限编程》前言及第一章(06-05)
  ·用Perl来分析并生成中文Excel文件·受限制环境安装Perl模块方法·PerlCookbook2介绍·《极限编程》前言及第一章·Perl简单模块指南·如何使用strict和warnings·Perl小技巧:文件操作·构建一个Perl/CGI投票系统·LINUX

Perl文件及目录操作

作者:Webmaster   来源:Linuxdby.com   点击:   日期:2007-06-05 [收藏] [投稿]

  IE是否经常中毒?推荐您


  大多数程序都不是孤立的,它们与它们的环境相互作用。很多的程序也需要通过文件操作实现数据的存贮和交换。文件句柄(filehandle)是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目录"。


 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Perl的运算符号字符   下一篇:Perl变量(1)--纯变量
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·使用Perl连接Mysql数据库

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。