我有一堆数据存储在由date标记的子目录中.我已经使用Cwd命令获取当前工作目录,以便我可以将其打印到我正在使用子目录中恢复的数据编写的vi文件.我使用Cwd作为数据字符串的前缀.有没有办法只打印当前目录名而不是路径?
例:
而不是打印 -
/d2/aschwa/archive_data/METAR_data/20120302KDUX 121255Z.........
Run Code Online (Sandbox Code Playgroud)
有没有办法只打印 -
20120302KDUX 121255Z.........
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的代码 -
use strict;
use warnings;
use file::find;
use Cwd;
my @folder = ("/d2/aschwa/archive_project/METAR_data/");
open( OUT , '>', 'KDUX_METARS.txt') or die "Could not open $!";
print OUT "Station, Day/Time, Obs Type, Wind/Gust, Vis, Sky, T/Td, Alt, Rmk\n";
print STDOUT "Finding METAR files\n";
my $criteria = sub {if(-e && /^2012/) {
open(my $file,$_) or die "Could not open $_ $!\n";
my $dir = getcwd;
while(<$file>) {
print OUT $dir,$_ if /KDUX ....55Z|KDUX ....05Z/;
}
}
};
find($criteria, @folder);
close OUT;
Run Code Online (Sandbox Code Playgroud)