我正在编写一个脚本来查找目录中的某些文件并对其进行处理.我继续写下面的内容:
opendir DIR, $dir;
@files = readdir DIR;
closedir DIR;
Run Code Online (Sandbox Code Playgroud)
虽然我可以(实际上应该)将它包装在一个函数中,但我想知道是否有更优雅的方法来做到这一点?
dav*_*420 14
最优雅的是使用其他人已经写过的功能.
use File::Slurp;
@files = read_dir $dir; # . and .. are removed by default
Run Code Online (Sandbox Code Playgroud)
另一种方法是使用do块:
my @files = do {
opendir my $d, '/your/dir/';
readdir $d;
};
Run Code Online (Sandbox Code Playgroud)
它更优雅,因为我的$ d是局部阻塞(不像你的DIR全球)且不需要closedir,因为当$ d出去的范围文件句柄将自动关闭.
/ I3az /
| 归档时间: |
|
| 查看次数: |
318 次 |
| 最近记录: |