in reply to Re^2: System command stdout
in thread System command stdout

On the command line you could do,
tar -cvf newarchive.tar `tar -tf archive.tar | grep "gz" | grep -v "si +g"`
However, in your perl program, you could simply backtick to capture the ".gz" filename you want (using Perl's grep), and then pass that to system as the argument to the tar -cvf command. e.g.,
my @gzfiles = grep { m/gz/ && ! m/sig/ } `tar -tf archive.tar` my @args = ( "tar","-cvf","newarchive.tar", @gzfiles ); system(@args) == 0 or die "Can't archive files: $!\n@gzfiles";

---
echo S 1 [ Y V U | perl -ane 'print reverse map { $_ = chr(ord($_)-1) } @F;'
Warning: Any code posted by tuxz0r is untested, unless otherwise stated, and is used at your own risk.