require IO::File;
+$nice='nice ' if !defined $nice;
+
sub printdate () {
print scalar(localtime),"\n";
}
# to be in $tf.
sub parsefsys () {
my ($dopts,$dopt);
- if ($tf =~ m#^(/\S*)\s+(\w+)([,0-9a-z]+)$#) {
+ if ($tf =~ m#^(/\S*)\s+(\w+)([,=0-9a-z]*)$#) {
# Line of form '/file/system dumptype[,options]'
$atf= $1;
$tm= $2;
stat $atf or die "stat $atf: $!";
-d _ or die "not a dir: $atf";
$rstr= '';
- } elsif ($tf =~ m#^(/\S*)\s+(\w+)([,0-9a-z]+)\s+(\w+)$#) {
+ } elsif ($tf =~ m#^(/\S*)\s+(\w+)([,=0-9a-z]*)\s+(\w+)$#) {
# Line of form '/file/system dumptype[,options] prefix'
# (used for remote backups)
$atf= $1;
$dopt{$dopt}= 'y';
} elsif ($dopt =~ m/\=/ && grep { $` eq $_ } qw(gz)) {
$dopt{$`}= $';
- } else {
- die "unknown option $dopt";
+ } elsif (length $dopt) {
+ die "unknown option $dopt (in $dopts $tf)";
}
}
+
+ if ($dopt{'gz'} eq 'y') {
+ $gz= '1';
+ } elsif ($dopt{'gz'} =~ m/^\d$/) {
+ $gz= $dopt{'gz'};
+ } elsif (defined $dopt{'gz'}) {
+ die "$tf bad gz";
+ } else {
+ $gz= 0;
+ }
}
sub openlog () {