枫叶飞翔 发表于 2018-9-1 09:25:35

perl对文件和目录进行操作

对文件和目录进行操作  opendir 目录句柄,“目录”;
  for $a(readdir 目录句柄){
  printer $a
  }
  @a=readdir HOME;
  打印目录,没有排序。
  查找递归目录用File::Find
  删除文件:(只是删掉连接,数据应该还没有删掉。我是这样理解)
  unlink “文件”,“文件2”;
  注:unlink返回的是成功删除文件的数量。
  对应的,创建一个文件的硬链接:
  link “文件”,“硬链接”;
  有硬链接就有软连接:
  symlink “文件”,“软连接名”;
  unlink glob “*.tmp";
  使用glob,这里不是正则。
  重命名文件:
  rename ”源”,“新名字”;
  创建目录:
  mkdir “目录名”,0755;
  第二个参数是初始权限。这里的0是指八进制,不是那个特殊位。注意了,如果第二个参数是字符串,不
  管前面是不是0,这个语句都是错误的。
  oct函数:
  强制一个以个字符串作为8进制的数字来解释。不关前面是不是0.
  删除空目录:
  rmdir “目录”;
  rmdir是File::Path模块中的函数。
  改变文件的权限:
  chmod 0777,“文件1”,“文件2“;
  安装File::chmod
  改变所有者:
  chown uid,gid,“文件”;
  如果用用户名,就要用 getpwnam“用户名” 转换成uid使用。
  chown返回改变文件个数。
  改变文件的时间戳:
  utime “atime”,“mtime”,“文件”;
  还有一个ctime是不能修改的。所以,这里就不用这个参数了。
  atime和mtime的格式,是time函数返回的格式就可以了。如:1247803647
  $mtime=$atime-24*60*60,修改时间变成一天前修改的。

页: [1]
查看完整版本: perl对文件和目录进行操作