nigel@freud:~$ cat /usr/local/bin/puppetwhen #!/usr/bin/perl use strict; use warnings; use YAML; use Date::Parse; my %nodes; foreach my $file ( glob '/var/lib/puppet/yaml/facts/*.yaml' ) { my $data = YAML::LoadFile($file); my $name = $data->{name}; my $age = time - str2time($data->{version}); $age = int($age/60 + 0.5); $nodes{$name} = $age; } my @sorted = sort { $nodes{$a} <=> $nodes{$b} } keys %nodes; foreach my $key (@sorted) { printf("%5d minutes ago: %s\n", $nodes{$key}, $key); }