#!/usr/bin/perl use strict; use warnings; use Date::Calc qw(AddDeltaDays AddDeltaYM); my $filespath = "/home/re17830/chksize/checksize_db"; my ($day,$month,$year) = (localtime time)[3..5]; my $date = sprintf "%02d-%02d-%02d", $year % 100, $month+1, $day; my ($pyear,$pmonth,$pday) = Add_Delta_Days( $year+1900,$month+1,$day, -1 ); my ($lyear,$lmonth,$lday) = Add_Delta_YM( $year+1900, $month+1, $day, 0, -1 ); my $predate = sprintf "%02d-%02d-%02d", $pyear % 100, $pmonth, $pday; chomp(my $prechk = `echo $pday | wc -ck`); if ($prechk == 2) { $preday = "0$predaycheck"; } my $newfile = "$filespath/SizeCheck-$date\.dat"; my $oldfile = "$filespath/SizeCheck-$predate\.dat"; my @filesystem = `ls -Rlgo /`; open(REWRITE, ">$newfile"); foreach(@filesystem) { chomp(); my @line = split(/ +/); if ($line[0] =~ m/^\//g) { print REWRITE "\n$line[0]\n"; } elsif (($line[0] =~ m/^dr/g) || ($line[0] =~ m/^-r/g)) { print REWRITE "$line[2]\t\t$line[6]\n"; } else { next; } } if ($day == 28) { `rm $filespath/SizeCheck-*-\$premonth\-*`; }