Есть ли у нас autochomp в Perl?

Вот как выглядит мой код Perl для мониторинга папки Unix : ​​

#!/usr/bin/perl
use strict;
use warnings;
use File::Spec::Functions;

my $date    = `date`; chomp $date;
my $datef   = `date +%Y%m%d%H%M.%S`; chomp $datef;
my $pwd     = `pwd`; chomp $pwd;

my $cache   = catfile($pwd, "cache");
my $monitor = catfile($pwd, "monme");
my $subject = '...';
my $msg     = "...";
my $sendto  = '...';
my $owner   = '...';

sub touchandmail {
     `touch $cache -t "$datef"`;
     `echo "$msg" | mail -s "$subject" $owner -c $sendto`;
}

while(1) {

    $date  = `date`; chomp $date;
    $datef = `date +%Y%m%d%H%M.%S`; chomp $datef; 

    if (! -e "$cache") {
        touchandmail();
    } elsif ("`find $monitor -newer $cache`" ne "") {
        touchandmail();
    }
    sleep 300;
}
  • Чтобы выполнить chomp ] после каждого задания выглядит не очень хорошо. Есть ли какой-нибудь способ сделать "autochomp"?

  • Я новичок в Perl и, возможно, написал этот код не лучшим образом. Любые предложения по улучшению кода приветствуются.

8
задан Community 23 May 2017 в 12:18
поделиться