- 580 名前:デフォルトの名無しさん mailto:sage [2019/09/22(日) 23:32:48.92 ID:Yf8464Y3.net]
- >>560 修正、0割回避、localtimeが返すepochのmtimeはUTCベースなのでTZ設定追加し9時間ずれ対策
$ENV{TZ} = 'UTC'; use File::Find 'find'; use Time::Piece; sub hier { my $mtime = (lstat)[9]; push @epochs, $mtime if -f _; } find({wanted => \&hier}, "$ENV{USERPROFILE}/My Documents"); print "Number of files = " . @epochs . "\n"; @w = ([],[],[],[],[],[],[]); for (@epochs) { ($sec, $min, $hour, $wday) = (localtime $_)[0..2,6]; push @{$w[$wday]}, 3600*$hour + 60*$min + sec; } use List::Util 'sum'; @dw = qw(日 月 火 水 木 金 土); for (0..6) { $n = @{$w[$_]}; if ($n) { $mean = sum(@{$w[$_]}) / $n; $s = Time::Piece->new($mean); printf "$dw[$_](%4d): %s\n", $n, $s->hms; } }
|

|