Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1793768
  • 博文数量: 438
  • 博客积分: 9799
  • 博客等级: 中将
  • 技术积分: 6092
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-25 17:25
文章分类

全部博文(438)

文章存档

2019年(1)

2013年(8)

2012年(429)

分类: Python/Ruby

2012-03-26 09:49:38

可以用三种方式打开文件:读、写与添加。下面是文件的读写操作:


  1. if (open (MYFILE, ">myfile"))
  2. {
  3.     print "opened in write mode\n";
  4.     print MYFILE "First line in file\n";
  5.     close(MYFILE);
  6. }
  7. else
  8. {
  9.     print "file not opened in write mode\n";
  10. }

  11. unless (open (MYFILE, ">>myfile"))
  12. {
  13.     print "file not opened in append mode\n";
  14. }
  15. else
  16. {
  17.     print "file opened in append mode\n";
  18.     print MYFILE "Second line in file\n";
  19.     close(MYFILE);
  20. }

  21. unless (open (MYFILE, "myfile"))
  22. {
  23.     die "file not opened in read mode\n";
  24. }
  25. @lines = <MYFILE>;
  26. print @lines;
  27. close(MYFILE);


文件测试操作符:用if (-op file)的方式可以检查一个文件的属性,其中op为下表中的某个操作符:
操作符 描述
-b 是否为块设备
-c 是否为字符设备
-d 是否为目录
-e 是否存在
-f 是否为普通文件
-g 是否设置了setgid位
-k 是否设置了sticky位
-l 是否为符号链接
-o 是否拥有该文件
-p 是否为管道
-r 是否可读
-s 是否非空
-t 是否表示终端
-u 是否设置了setuid位
-w 是否可写
-x 是否可执行
-z 是否为空文件
-A 距上次访问多长时间
-B 是否为二进制文件
-C 距上次访问文件的inode多长时间
-M 距上次修改多长时间
-O 是否只为“真正的用户”所拥有
-R 是否只有“真正的用户”可读
-S 是否为socket
-T 是否为文本文件
-W 是否只有"真正的用户"可写
-X 是否只有"真正的用户"可执行
注:“真正的用户”指登录时指定的userid,与当前进程用户ID相对,命令suid可以改变有效用户ID。

Perl中的命令行参数可以由数组@ARGV得到。它的第一项是第一个参数,而不像C一样是程序名。操作符“<>”可以依次读取以各命令行参数为文件名的文件,并返回一行:


  1. while ($line = <>) { print $line; }

阅读(728) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~