reader
unread,Oct 5, 2021, 3:45:04 PM10/5/21You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to begi...@perl.org
Whenever I don't do scripting for longish periods, next time I start
writing a perl script, an awful lot of useful info has flew right out
of my pea brain.
I was pretty sure I have written perl scripts that wrote to log files
with out problems but the script below does not. Instead if throws
this error:
Can't use string ("/home/reader/t/var/log/fetchmail"...) as a symbol
ref while "strict refs" in use at ./pfetch line 18, <$ch> line 1.
pfetch script
------- ------- ---=--- ------- -------
#!/usr/local/bin/perl
use strict;
use warnings;
my $cmd = "fetchmail -vvvc";
my $PaddedDateStr = pd();
open my $ch, '-|', "$cmd" or die
"Can't open $cmd: $!";
my $log = "/home/reader/t/var/log/fetchmail.log";
open my $fh, '>>', "$log" or die
"Can't open $log: $!";
while (<$ch>) {
print $log "$PaddedDateStr $_";
}
print $log "\n";
close $log;
sub pd {
my ($mon,$mday,$year,$hour,$min,$sec,$wday) =
(localtime(time))[4,3,5,2,1,0,6];
$year -= 100; ## gives 2 digit (with %02d)
$mon += 1;
my $PDS = sprintf "%02d%02d%02d:%02d%02d%02d %d",
$year,$mon,$mday,$hour,$min,$sec,$wday;
return $PDS;
}
------- ------- ---=--- ------- -------