perl – 如何从特定的目录获取一定的扩展名的所有文件的列表?

我正在使用此代码获取特定目录中的所有文件的列表:
opendir DIR,$dir or die "cannot open dir $dir: $!";
my @files= readdir DIR;
closedir DIR;

如何修改代码或附加一些东西,以便它只查找文本文件,并且只加载具有文件名前缀的数组?

示例目录内容

.
..
923847.txt
98398523.txt
198.txt
deisi.jpg
oisoifs.gif
lksdjl.exe

示例数组内容

files[0]=923847 
files[1]=98398523
files[2]=198

解决方法

my @files = glob "$dir/*.txt";
for (0..$#files){
  $files[$_] =~ s/\.txt$//;
}

相关文章

1. 如何去重 #!/usr/bin/perl use strict; my %hash; while(...
最近写了一个perl脚本,实现的功能是将表格中其中两列的数据...
表的数据字典格式如下:如果手动写MySQL建表语句,确认麻烦,...
巡检类工作经常会出具日报,最近在原有日报的基础上又新增了...
在实际生产环境中,常常需要从后台日志中截取报文,报文的形...
最近写的一个perl程序,通过关键词匹配统计其出现的频率,让...