perl程序如何删除文件夹下的所有文件且不删除文件夹下的文件夹

perl程序如何删除文件夹下的所有文件且不删除文件夹下的文件夹,第1张

-f

Entry

is

a

plain

file

-d

Entry

is

a

directory

程序段如下:

opendir(DIR,

"D:/a")

or

die

$!

while

(my

$file

=

readdir(DIR))

{

if

(-f

"$dir/$file")

{unlink

"$dir/$file"}

}

closedir

DIR

这段程序经过了成功的试验。

把所有文件读入数组,然后排序,最后循环数组的所有项目,如果与下一条的前面6个字符相同,就删除。

opendir(DIR,'.')

@f=<DIR>

close(DIR)

@f=sort @f

foreach $i (1..($#f-1)){

    print "rmdir $f[$i] \n" if (substr($f[$i],0,6) eq substr($f[$i+1],0,6))

}

用perl run几个shell命令就行了

用unzip命令 先把目标zip解压到文件夹

rm 目标zip文件

然后cd 文件夹名 &&rm -rf 要删除的文件 &&cd ../

zip 命令再把文件夹压缩

rm -rf 解压文件夹就好了

perl 里面调用shell命令只需用反引号`(数字1左边那个键)将所运行的命令包起来就行了,当然你需要有文件读写权限


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8139527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存