my $times = $ARGV[1]; my ($start_time, $end_time) = ( $times =~ /^(\d{6})-(\d{6})$/ ) or die "Time values are not in correct form\n"; my $dates = $ARGV[2] || strftime ("%y%m%d", localtime); # make sure to use POSIX qw(strftime); my $start_date, $end_date; if ( ! (($start_date, $end_date) = ( $dates =~ /^(\d{6})-(\d{6})$/ ) ) ) { ( $start_date ) = ( $dates =~ /^(\d{6})$/ ) or die "Date values not in correct form"; $end_date = $start_date; }