my (@file_change,@backup); my ($time2,$change,$file,$files);
You should declare variables as close as possible to where there are defined instead of all at the beginning.
open my $report, ">", "report.txt";
You should always verify that the file opened correctly before trying to use a possibly invalid filehandle.
for $file (</tmp/*>) {
The files in /tmp are temporary, why would you want to save them?
@file_change = stat($file); $time2 = $file_change[9]; # (day = 86400, week = 604800) $change = (time - $time2); push @backup, $file if ($change < 604800) ;
If you just want time periods based on days then you could use the -M operator.
# function to create tarball and backup changed files; sub backup { $files = "@backup"; system ("tar -czvf backup.tgz $files") ; } # run backup function backup();
Why does this need to be a subroutine? You should verify that system succeeded.
In reply to Re: Perl backup script
by jwkrahn
in thread Perl backup script
by techjohnny
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |