perl 文件,目录操作

perl打印文件头 #!/usr/bin/perl -w use strict; use POSIX; my $cur_time=strftime("%m/%d/%Y",localtime()); my $file_name; my $tab = " "x4; if (@ARGV == 1) { $file_name = $ARGV[0]; } else { &help_message(); } open (... 阅读详情
文件检测操作符
-e文件是否存在
-f文件是普通文件
-d文件是目录
-r文件是否可读
-w文件时候可写
-x文件是否可执行
-s文件存在且大小非零,返回文件大小的字节数
-z文件存在且大小为0
-B文件是二进制文件
-T文件是文本文件
-A距离上次文件被访问年限
-M距离上次文件被修改年限            int(var) 函数取整
-C距离创建文件的年限
  
  
更改访问许可权限
chmod (mode , fileList)  mode为四位数字, 0XXX
文件重命名:
rename (fileName, newFileName)
注:创建新文件,旧文件删除,如果已存在newFileName文件则覆盖 。成功返回1
删除文件
unlink (fileList) 即删除所有硬链接,返回删除文件个数
文件通配:
glob("标识") # 引号不能少
<"标识">
标量环境:返回匹配的第一个文件
列表环境:返回匹配的文件列表
目录操作:
opendir (DIR, fileDir)
readdir(DIR) 返回文件列表
closedir DIR
需求实例:遍历一个文件夹,并将其中的某些文件更名
# 功能:将目标目录下的以.logbak结尾的文件更名为.log
#  目录操作函数可以在相对路径下工作
use strict;
use warnings;

sub changeName {
    
chdir shift;
    
print `pwd`; # 打印当前目录
    for my $file (glob("*")) {  # glob不会包含.和.. 目录
        if (-d $file) {
            
chdir ($file);  # 子目录一直保持在当前目录工作
            &changeName(`pwd`);
            
chdir ("..");
        }
        
elsif (-f $file && $file =~ /(.+)(.logbak)$/i) {
            
if (-f $1.".log") { # 防止更名误覆盖文件
                rename ($1.".log",$1.".newlog");
            }
            
rename ($file,$1.".log");
        }
    }
}
            

&changeName(shift);  # 参数为目标目录


my $path = `pwd`;
chomp $path;     # `pwd`命令结尾有个回车符,需要chomp去掉
print "$path ";
opendir DIR ,$path || die "cant open $!";
foreach my $file (readdir DIR) {    # readdir 将读出所有的文件和目录,包括.和..
    print "$file ";
}
Perl文件与目录操作指南 本文介绍多个Perl程序示例,涵盖目录切换、文件列表显示、文件删除与重命名、硬链接与符号链接创建、符号链接信息查看等文件系统操作,并包含字符串查找、数字排序输出及FizzBuzz类逻辑控制的实现方法,适用于系统编程学习与实践。 阅读详情

相关推荐

Perl编程实例:文件与目录操作

本文介绍了多个使用Perl语言实现的编程实例,涵盖文件操作、目录处理、符号链接识别、字符串匹配、正则表达式交互、文件时间戳获取、基本数学计算等功能。示例包括rm和mv命令的实现、信号处理、用户输入交互等,适用于熟悉Perl脚本开发的开发者。

xk7n92h3p5m的博客 753

Perl 获得当前路径

Perl 获得当前路径<br />1、有两种方法:<br />1. use Cwd;<br />my $dir = getcwd;<br />#$dir中即为当前目录的完整路径信息。<br />2. my $dir = $ENV{'PWD'};<br />#ENV是一个散列,用于存放环境变量。PWD是Linux的环境变量,表示当前所在目录。<br /> <br />my  $path=`pwd`;<br />print $path,"/n";<br /><br /> <br />2、STAF的Lib库路径信

zxianyong的专栏 1万+

Perl文件权限检测与目录操作编程

本文介绍如何使用Perl编写文件权限检测程序,判断文件的可读、可写、可执行状态,并处理使用chmod设置权限为0的情况。此外,还展示了如何切换目录、列出目录内容、实现rm、mv、链接创建等常见命令行功能,并提供多个Perl编程示例。

xxx12的博客 615

Perl-目录操作1

1. 当前工作目录 程序运行时总有一个相应的工作目录,后续要做的事都是从这个目录开始 借助标准模块之一的Cwd模块,我们可以看到当前的工作目录是哪个 use v5.10; use Cwd; say "The current working directory is ", getcwd(); 打印出来的目录应该就是程序保存的位置 如果使用相对路径打开某个文件,perl会按当前目录定位这个相对路径 比如当前工作目录是/home/fred,运行以下代码来读取文件,perl会定位到/home/fred/relat

Arkardia的博客 1808

Perl File::Path 模块

perldoc File::Path NAME File::Path - create or remove directory trees SYNOPSIS use File::Path; mkpath(['/foo/bar/baz', 'blurfl/quux'], 1, 0711); rmtree(['foo

zhaoyangjian724的专栏 2359

Perl基础学习09之perl文件目录操作

目录 文件目录操作常用操作符 stat函数 文件目录常用操作 创建文件 删除文件 创建目录 删除目录 切换目录 File::Basename模块操控路径 文件目录操作常用操作符 -s 判断文件存在且非空返回1; -e -s 均能判断文件,目录是否存在,存在返回1; -l 文件是软链接,返回1; -d 是目录返回1; -z 文件为空返回1; -M 最后一次修改时间;...

qq_21478261的博客 627

perl采用File::Path管理多级目录

1. File::Path 介绍 The make_path function creates the given directories if they don't exists before, much like the Unix command mkdir -p .

bruce_wang_janet的专栏 4144

【上海大学计算机组成原理实验报告】七、程序转移机制

学习实现程序转移的硬件机制//掌握堆栈寄存器的使用//手动方式实现子程序调用转移过程//手动方式实现子程序返回转移过程//编程实现`OUT`寄存器交替显示`11`和`55`//若要求`11`和`55`各显示`50`次后停机,应该如何修改程序?//根据实验指导书的相关内容,实验箱系统的程序转移硬件机制在于,当`LDPC`有效时,如果此时`DUBS`上的值就是转移的目标地址,则此目标地址被打入`PC`,从而实现程序的转移;若`LDPC`为`0`是附带条件的,就形成“条件转移”。

HackerKevon的博客 2474

perl 文件目录操作

perl 内置函数的操作 perl目录操作, 创建目录句柄指向要操作的目录。 打开目录句柄使用 opendir ; opendir dirhandle,directory ; 例:取某目录下文件的列表: opendir (e,'E:\娱乐\music\阿杜')|| die"can't open e: $!" ; @files=readdir e;  closedir(e) ;

Shao_You的博客 1507

极空间NAS小白也能搞定的Gitea部署:Docker+MySQL避坑全记录

本文为极空间NAS用户提供了一份详尽的Gitea私有代码仓库部署指南。针对极空间ARM架构和图形化Docker管理的特殊性,文章重点讲解了如何通过Docker和MySQL容器进行部署,并提供了三种获取兼容镜像的实战策略,特别是利用第三方镜像站转录的方法,帮助小白用户成功搭建并初始化Gitea服务,实现私有Git托管。

weixin_28318011的博客 368

从零开始:用君正T23ZN打造智能门锁双摄系统(含代码示例与调试技巧)

本文详细介绍了基于君正T23ZN视频处理芯片构建智能门锁双摄系统的完整实战方案。内容涵盖硬件选型与核心电路设计、软件开发环境搭建、双摄驱动框架、图像信号处理(ISP)调优、人脸识别算法集成与性能优化,以及系统调试与稳定性保障。文章提供了丰富的代码示例和调试技巧,旨在帮助嵌入式开发者高效实现具备人脸识别与监控功能的低功耗智能门锁视觉系统。

opencv7vision的博客 717

Perl文件及目录操作

<br />大多数程序都不是孤立的,它们与它们的环境相互作用。很多的程序也需要通过文件操作实现数据的存贮和交换。 文件句柄(file handle)是Perl程序中为程序和外部世界提供I/O连接的名称。建议全部使用大写字母以示与变量等的区别。特别地,也可以将TDIN/STDOUT/STDERR也认为是Perl的文件句柄,分别代表标准输入/标准输出/标准错误输出。  <br /> <br />1. 打开及关闭文件  <br />Perl的文件操作与C语言极为相似。如:  <br />open(FILENAME

julietcq的专栏 920

FPGA之道(22)VHDL基本程序框架

在介绍详细的VHDL语法之前,让我们先来了解一下VHDL代码的基本程序框架,这样可以让我们先对VHDL程序设计有一个整体的概念把握,进而在后续的VHDL语法学习中做到有的放矢。

Reborn Lee 8309

perl重点学习笔记之目录文件操作

a

一个2货的成长历程 905

rk3568 rk628桥片 rgb2hdmi

RK628 是瑞芯微全新推出的视频桥接芯片,支持丰富的显示接口,支持高分辨率大屏产品转换需求。基于DRM、FB的显示框架易于使用。 输入信号支持:HDMI、RGB、BT.1120,输出信号支持 HDMI、GVI、Dual LVDS、Dual MIPI、MIPI-CSI、RGB、BT.1120,最高支持4K 60fps 输入/输出转换,并且支持输入到输出 1/4~4倍的缩放。

weixin_35723192的博客 452

YOLOv8改进系列:RepVGG重参数化结构——训练多分支,推理单路,极致提速

本文将详细介绍如何将RepVGG的重参数化思想融入到YOLOv8的骨干网络中,实现一种训练时多分支、推理时单路的改进版YOLOv8。我们将提供完整的代码实现、详细的原理讲解,并在COCO数据集和自定义数据集上进行充分的实验验证。

YOLO 200

Perl文件目录操作

目录   文件操作 open函数 close函数 读写文件 文件重命名 demo 删除文件   目录操作 function demo 文件操作 Perl文件操作比较好理解,将文件open后得到一个handle,通过这个handle对文件进行操作,和Linux相关系统接口非常类似,这个handle可以理解为Linux接口里的文件描述符。支持3种标准HANDLE:STDIN...

Hunk的菜鸟之路 1495

Android USB串口通信详解与实例

在Android开发中,USB串口通信是一个常见的需求,尤其是在与硬件设备进行交互时。通过USB串口,我们可以轻松地实现数据的发送与接收。本文将详细介绍如何使用库来实现Android设备与USB串口设备的通信。

m0_62153576的博客 678
上一篇: Perl特殊变量(flw等翻译)
下一篇: perl 用map,grep求列表交集并集
utopia_wang
博客等级 码龄20年 7粉丝 27原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值