分享
 
 
 

Perl文件及目录操作

王朝perl·作者佚名  2008-05-18
窄屏简体版  字體: |||超大  

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有