in reply to Escaping characters in one-liners
Getting the quotes right can be quite daunting, that's why there's help via Sysadm::Install from CPAN: Let's whip up a script one_liner really quickly:
#!/usr/bin/perl # one_liner - produce a perl one-liner out of perl code use Sysadm::Install qw(:all); my $in = join "", <>; $in =~ s/\n/ /g; print "perl -e ", qquote($in, ':shell'), "\n";
Now, if you call one_liner without arguments, it'll wait for code to be typed into STDIN, terminated by CTRL-D, and spit out the one-liner right after:
$ one_liner print "hello\n"; print "world\n"; ^D perl -e "print \"hello\\n\"; print \"world\\n\"; "
Produces properly escaped one-liners out of any messy perl code you paste in.
|
---|
In Section
Seekers of Perl Wisdom