Hi.
Should this move to Obfuscated Code? :-)
perl -F: -al0ne '$i||=1;/^n/&&print$i;!/^u/&&print$F[1];/^$/&&$i++&&pr +int$/'
I don't think it meets the "simple" requirement, but it is mostly on one line... ;-)
Here is what B::Deparse makes of it though, for reference.
LINE: while (defined($_ = <ARGV>)) { chomp $_; @F = split(/:/, $_, 0); $i ||= 1; print $i if /^n/; print $F[1] if not /^u/; print $/ if /^$/ and $i++; }
I'm not sure if the preceeding number is a requirement or not. Without the number prefix, I can get down to:
perl '-F: ' -al0ne '!/^u/&&print qq($F[1] );/^$/&&print$/'
(To run on Win32, change all the ' into " - it should still work.)
Hope that helps.
Cheers,
-- Dave :-)
$q=[split+qr,,,q,~swmi,.$,],+s.$.Em~w^,,.,s,.,$&&$$q[pos],eg,print
In reply to Re: Simple perl one-liner for transforming text files
by DaveH
in thread Simple perl one-liner for transforming text files
by m5m5m
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |