- my @cmd = @tarClientCmd;
- @tarClientCmd = ();
- foreach my $arg ( @cmd ) {
- next if ( $arg =~ /^\s*$/ );
- if ( $arg =~ /^\$fileList(\+?)/ ) {
- my $esc = $1 eq "+";
- foreach $arg ( @fileList ) {
- $arg = $bpc->shellEscape($arg) if ( $esc );
- push(@tarClientCmd, $arg);
- }
- } else {
- $arg =~ s{\$(\w+)(\+?)}{
- defined($vars->{$1})
- ? ($2 eq "+" ? $bpc->shellEscape($vars->{$1}) : $vars->{$1})
- : "\$$1"
- }eg;
- push(@tarClientCmd, $arg);
- }
- }