App-tmclean
view release on metacpan or search on metacpan
lib/App/tmclean.pm view on Meta::CPAN
sub backups2delete {
my $self = shift;
my @backups = `tmutil listbackups`;
if ($? != 0) {
die "failed to execute `tmutil listbackups`: $?\n";
}
# e.g. /Volumes/Time Machine Backup/Backups.backupdb/$machine/2018-01-07-033608
return grep {
chomp;
my @paths = split m!/!, $_;
my $backup_date = eval { Time::Piece->strptime($paths[-1], '%Y-%m-%d-%H%M%S') };
$backup_date && $self->before_tp > $backup_date;
} @backups;
}
sub mount_point {
my $self = shift;
$self->{mount_point} ||= sub {
my @lines = `tmutil destinationinfo`;
lib/App/tmclean.pm view on Meta::CPAN
if ($key eq 'Mount Point') {
return $val;
}
}
die "no mount points found\n";
}->();
}
sub dev_name {
my $path = shift;
my @paths = split m!/!, $path;
join '/', @paths[0..2];
}
sub machine_name {
my $self = shift;
$self->{machine_name} ||= do {
chomp(my $hostname = `hostname`);
if ($? != 0) {
die "failed to execute `hostname`: $?\n";
( run in 0.842 second using v1.01-cache-2.11-cpan-d7a12ab2c7f )