App-TrashUtils

 view release on metacpan or  search on metacpan

lib/App/TrashUtils.pm  view on Meta::CPAN

    require File::Trash::FreeDesktop;
    require Perinci::Object::EnvResultMulti;

    my %args = @_;

    my $trash = File::Trash::FreeDesktop->new;
    my $res = Perinci::Object::EnvResultMulti->new;
    for my $file (@{ $args{files} }) {
        my @st = lstat $file;
        if (!(-e _)) {
            $res->add_result(404, "File not found: $file", {item_id=>$file});
            next;
        }
        if ($args{-dry_run}) {
        log_info "[DRY_RUN] Trashing %s ...", $file;
            $res->add_result(200, "Trashed (DRY_RUN)", {item_id=>$file});
            next;
        }
        log_info "Trashing %s ...", $file;
        eval { $trash->trash($file) };
        if ($@) {



( run in 0.951 second using v1.01-cache-2.11-cpan-39bf76dae61 )