Perl入门(五)Perl文件读写



Perl文件夹操作

Perl创建、删除、修改文件夹

mkdir("文件夹名称",权限);

rmdir("文件夹名称");

rename("旧文件夹名称","新文件夹名称");

权限:4代表可读,2代表可写,1代表可执行;权限的组成:[前缀0][文件所有者][同组用户][其他用户]。

生成的数字序列由拥有的权限对应的数字加和计算得到。

如‘0755’代表:文件所有者可读可写可执行,同组用户可读可执行,其他用户可读可执行。

注意:

  1. 一次只能创建/删除一个文件夹;
  2. 删除的文件夹必须为空文件夹;
  3. 为了更安全的操作文件夹,一般在各种操作后添加“|| die "失败描述信息$!"”,意思为:“如果失败了,输出信息,然后终结进程”。另外$!是系统错误提示信息。
#!user/bin/env perl -w

#预定义两个文件夹路径
@dirs=("newFolder","newFolder/insideFolder1","newFolder/insideFolder2");

#创建文件夹
#Perl mkdir 只能创建最后端的文件夹,它认为中间的文件夹都是已经存在了的
#如果你先执行下面这句,则会告诉你找不到这样的文件夹
#mkdir ($dirs[1],0755) || die "folder $dirs[1] can not be created! cause by:$!" ;
foreach $dir (@dirs)
{
	mkdir ($dir,0777) || die "folder $dir can not be created! cause by:$!";
}

#rename方法可以更改文件夹名称
rename("newFolder/insideFolder1","newFolder/insideFolder3")||die "rename folder failed! cause by:$!";

#删除文件夹,被删除的文件夹必须为空
rmdir($dirs[2]) || die "remove folder failed!cause by:$!";

Perl获取文件夹列表

1.获取文件夹操作句柄

opendir(句柄名称,文件夹路径);

2.读取文件列表

readdir(句柄名称);

3.关闭文件句柄

closedir(句柄名称);

其他方法:

1.glob获取文件夹下列表

glob(文件夹路径/*);

2.glob方法的简写

<文件夹路径/*>;

XXXXdir和glob方法对比:

1.glob方法返回文件数量有限,如果文件夹下文件过多,则只会提示“过多的内容”;

2.glob方法返回的文件列表带路径;

3.glob方法由于是调用本地机器的方法协助工作,故效率低。

#!user/bin/env perl -w

#获取文件夹列表
opendir (FOLDER,"newFolder") || die "can not open folder!cause by:$!";
my @folders1 = readdir(FOLDER);
#如只需要某一些满足条件的内容,可以使用下面写法
#my @folders = grep(!/\.+/,readdir(FOLDER));
foreach $file (@folders1)
{
	print "$file\n";
}
closedir(FOLDER);
print "-" x 50;
print "\n";
my @folders2 = glob("newFolder/*");
#简化为:my @folders = <"newFolder/*">;
foreach $file (@folders2)
{
	print "$file\n";
}

输出结果:

.
..
insideFolder1
insideFolder2
--------------------------------------------------
newFolder/insideFolder1
newFolder/insideFolder2

Perl入门(五)Perl文件读写

时间: 2024-08-06 02:46:57

Perl入门(五)Perl文件读写的相关文章

perl5 第五章 文件读写

第五章 文件读写 by flamephoenix 一.打开.关闭文件二.读文件三.写文件四.判断文件状态五.命令行参数六.打开管道 一.打开.关闭文件   语法为open (filevar, filename),其中filevar为文件句柄,或者说是程序中用来代表某文件的代号,filename为文件名,其路径可为相对路径,亦可为绝对路径.    open(FILE1,"file1");    open(FILE1, "/u/jqpublic/file1");  打开

微信小程序入门五: wxml文件引用、模版、生命周期

实例内容 wxml文件引用(include.import) 模版 小程序生命周期 实例一: include方式引用header.wxml文件 文件引用对于代码的重用非常重要,例如在web开发中我们可以将公用的header部分和footer等部分进行提取,然后在需要的地方进行引用. 微信小程序里面,是包含引用功能的--include.import.这两个引用文件的标签,使用基本差不多,这里先说一下include. 微信中的视图文件引用,引用过来的都是没有渲染的,基本类似于直接将引用过来的文件复制到

Perl入门(六) Perl方法的使用

 1.定义一个方法 Perl使用sub定义方法. 语法: sub 方法名称{方法体} 2.调用一个方法 Perl直接使用方法名称调用方法. 调用方式有以下四种: 方法名称: &方法名称: 方法名称(); &方法名称(); 说明:方法调用可以再任何位置,可以在方法前.后调用,也可以在方法体内部调用. 3.传递参数 Perl通过方法名后面的括号将参数列表传递到方法体内.例如:function_name("param1","param2"...); 方

快速入门Python中文件读写IO是如何来操作外部数据的?

读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据(读文件),或者把数据写入这个文件对象(写文件). 读文件 要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标示符 >>> f =

Matlab入门学习(文件读写)

一.save,load >> a=[1 2 3 4]; >> b=[4 5 6 7] b = 4 5 6 7 >> save('b.mat','a','b');%a file named b.mat will exit >> clear >> load b.mat >> %load the data a and b 二.txt文件 假设在当前目录下有个txt文件data.txt,内容如下: 1 2 34 5 67 8 9 使用语句: 

机试练习总结06:c语言输入&amp;输出&amp;文件读写

一.标准文件 c语言把所有设备当作文件. stdin:键盘.标准输入 stdout:屏幕.标准输出 stderr:您的屏幕.标准错误 头文件:stdio.h 二.getchar() & putchar() int getchar(void) 从屏幕读取下一个可用字符,并用它返回为一个整数. int putchar() 该函数同一时间内只会输出一个单一的字符. 三.gets() & puts() 函数 char *gets(char *s) 从stdin读取一行到s所指向的缓冲区,直到一个终

perl对大量大文件进行读写

在对大量文件进行读写时,最好将文件存为gz文件,可以节约读写硬盘的时间,硬盘也不会那么卡. 在写gz文件时,最好使用PerlIO::gzip模块.这个模块不用调用gzip命令,减少了程序占用的线程数量,可以有效的降低load. 下面是一个例子. #! /usr/bin/env perl use strict; use warnings; use List::Util; use FileHandle; use PerlIO::gzip; my %fh; my @a=(1..100); for(my

Perl文件读写

Perl File Handling: open, read, write and close files #==================== Opening files Solution 1: Opening a file in perl open FILE, "filename.txt" or die $!; # read open FILEHANDLE, MODE, EXPR The available modes are the following: mode oper

Perl入门(一)Perl的基本类型及运算符

在学习Perl的基础之前,还是希望大家有空去看以下Perl的简介.百度百科 一.Perl的基本类型 Per的基本类型分为两种:数值型和字符串型. 数值型可细分为 整数型.如123. 浮点型.如123.123.0.123456. 科学计数型.如1.23E2.1.23e2. 大数值类型.如1_156_123_585_123. 字符串型 字符串.如"123456",'123',qq(this is a string too!) 二.用变量存储基本类型值 Perl定义变量很简单.格式为:$变量