导航:首页 > 文件教程 > perl判断文件为空

perl判断文件为空

发布时间:2024-09-28 20:28:47

❶ perl 判断文件是否为空

先新建一个空的文件,然后拿要判断的文件和这个空文件进行对比专判断即可。属
touch null

if(`diff otherdo null`)
{
print "otherdo is no null\n";
}
else
{
print "otherdo is null\n";
}

❷ perl 文件 检测

给加分不?
#compare folders
use strict;

sub get;
sub FolderCompare;
#输入的格式为:"perl foldercompare.pl <ul1 name> <ul2 name>\n";

if ( @ARGV < 2 )
{
die;
}
system"svn export @ARGV[0] A";
system"svn export @ARGV[1] B";
my $dirA = "A";
my $dirB = "B";
FolderCompare($dirA, $dirB, "0"); #第一次正向比较
FolderCompare($dirB, $dirA, "1"); #第二次反向比较,主要是查出B中有而A中没有的
#其中第三个参数是为了清除第一次已经输出的不一样的文本
system"rm A -rf";
system"rm B -rf";
print "Finished!";
sub get
{
my $dir = $_[0];
my %array;
opendir(DIR, $dir);
while (my $file = readdir(DIR))
{
my @array_tmp = stat("$dir/$file");
if($file =~ m/^[^.]/)
{
if(-d "$dir\\$file") #判断是否为目录,并标记
{
$array{$file} = [$array_tmp[7], "1"];
}
if(-f "$dir\\$file") #判断是否为文件,并标记
{
$array{$file} = [$array_tmp[7], "0"];
#print "$file\t$array{$file}[1]\n";
}
}
}
return %array;
}

sub FolderCompare
{
my $FolderA = $_[0];
my $FolderB = $_[1];
my $temp = $_[2];
my %arrayA = get($FolderA);
my %arrayB = get($FolderB);
foreach my $FileNameA (keys(%arrayA))
{
if(exists($arrayB{$FileNameA}))
{
if($arrayA{$FileNameA}[1] eq "1")
{
if($arrayB{$FileNameA}[1] eq "1")
{
FolderCompare("$FolderA\\$FileNameA", "$FolderB\\$FileNameA", "$temp"); #都为目录,进行递归
}
}
if($arrayA{$FileNameA}[1] eq "0") #都为文件,进行比较
{
if($arrayB{$FileNameA}[1] eq "0")
{
if($arrayA{$FileNameA}[0] != $arrayB{$FileNameA}[0])
{
if($temp == 0)
{
print "$FolderA\\$FileNameA is different from $FolderB\\$FileNameA\n";
}
}
}
}
}
else
{
print "$FolderA\\$FileNameA is not exitst in $FolderB\n";
}
}
}

❸ perl实现文件修改后写入原文件,如把文件里面的a都换成b后写回去,脚本实现,不用命令行。

$^I="";
while(<>){
s/a/b/;
}

只要求将$^I设置为空,即可实现在原文件改写.

❹ perl判断文件是否存在

主要就是 -e 这个操作符版 ( e 即是权 "exist" )

$fileExist = -e "C:/windows/readme.txt";
if ( $fileExist ) {
print "Yes"
}
else {
print "No"
}

❺ Perl怎么判断文件内容是否为空

请查看手册perl函数里的内容-X: perldoc -f -X

-z File has zero size (is empty).

my$file="/path/file.name";
if(-z$file){...}

❻ perl如何判断文件句柄已经打开

#!/usr/bin/perl
use5.010;

#(1)
say'(1)',filenoOUT?'yes':'no';
#(2)
openOUT,'>',"filename";
printOUT"abc ";
say'(2)',filenoOUT?'yes':'no';
closeOUT;
#(3)
say'(3)',filenoOUT?'yes':'no';
__DATA__


在perl里,fileno()函数可以返回句柄的文件描述符。可以使用fileno函数判断专某个变属量是否是文件句柄,判断文件句柄是否正常打开,判断文件句柄的类型。
标准输入输出句柄STDIN,STDOUT和STDERR的文件描述符分别是0,1和2(Unix标准传统),标准文件输入输出句柄的值从3开始,其具体值由句柄打开的顺序决定。若某变异是一个普通变量,则fileno的返回值是undef;若某个文件句柄未正常打开或者已关闭,fileno返回的值也是undef。

❼ Perl循环输出csv格式的文件

open F,"F:/a.csv"; #a.csv是你的csv文件
@array=<F>;
foreach (@array){
($s1,$s2,$s3,$s4,$s5)=split(/,/, $_); #s1-5分别对应每一列数据
print "$s1\t$s2\t$s3\t$s4\t$s5\n";} #如果某一列某一行是空的,perl自动定义为undef

阅读全文

与perl判断文件为空相关的资料

热点内容
如何修改乐视账号密码忘了怎么办 浏览:83
w10分区工具 浏览:654
电脑里发现别人的文件夹还打不开 浏览:279
win7升级win10后蓝屏重启后黑屏了 浏览:760
文件名后缀改了没用 浏览:278
中国为什么人少编程的人多 浏览:4
苹果电脑桌面文件夹太多了怎么办 浏览:180
搜狐视频文件多大 浏览:816
qq文件存在手机哪里 浏览:675
电信网络上的微信号怎么查 浏览:490
涿州少儿编程哪里有 浏览:736
压缩文件之后文件夹大小不变 浏览:689
可编程鼠标怎么使用识别图片 浏览:275
物理实验数据处理有哪些 浏览:724
怎么去推广app平台 浏览:466
捕鱼1000炮网络版 浏览:679
编程用的键盘是什么 浏览:316
perl判断文件为空 浏览:865
java生成07版的docx 浏览:276
华硕a555l升级了win10 浏览:820

友情链接