1
$ ls /tmp/foo/
foo10.txt foo11.txt foo15.txt
$ cat ./foo.pl
use warnings;
use strict;
use Cwd;
my $dir = cwd();
chdir '/tmp/foo';
my @files = glob "foo*.txt";
my $b = "";
for (0..$#files) {
my ($a) = $files[$_] =~ m/foo(.*)\.txt/;
$b = $b.",".$a;
}
chdir $dir;
print "$b\n";
輸出:的毗連字符串分隔
$ perl ./foo.pl
,10,11,15
如何避免第一個逗號,只是前10名?如果有比這更好的邏輯,也請提出建議。
在列表中使用['join'](https://perldoc.perl.org/functions/join.html),不要使用'$ a'和'$ b'作爲變量名稱---這些都是特殊的,只能與'sort'一起使用。 –
[打印Perl數組的簡單方法? (用一點格式)](https://stackoverflow.com/questions/5741101/easy-way-to-print-perl-array-with-a-little-formatting) –