2016-11-05 19:14:19 +00:00
|
|
|
# perl
|
|
|
|
|
|
|
|
> The Perl 5 language interpreter.
|
2019-05-29 14:53:42 +01:00
|
|
|
> More information: <https://www.perl.org>.
|
2016-11-05 19:14:19 +00:00
|
|
|
|
2016-11-05 19:17:40 +00:00
|
|
|
- Parse and execute a Perl script:
|
2016-11-05 19:14:19 +00:00
|
|
|
|
|
|
|
`perl {{script.pl}}`
|
|
|
|
|
2016-11-05 19:17:40 +00:00
|
|
|
- Check syntax errors on a Perl script:
|
2016-11-05 19:14:19 +00:00
|
|
|
|
2016-11-05 19:17:40 +00:00
|
|
|
`perl -c {{script.pl}}`
|
2016-11-05 19:14:19 +00:00
|
|
|
|
2019-11-12 08:50:23 +00:00
|
|
|
- Parse and execute a Perl statement:
|
2016-11-05 19:14:19 +00:00
|
|
|
|
2016-11-05 19:17:40 +00:00
|
|
|
`perl -e {{perl_statement}}`
|
2016-11-05 19:14:19 +00:00
|
|
|
|
2016-11-05 19:17:40 +00:00
|
|
|
- Run a Perl script in debug mode, using `perldebug`:
|
2016-11-05 19:14:19 +00:00
|
|
|
|
|
|
|
`perl -d {{script.pl}}`
|
2017-04-15 16:48:00 +01:00
|
|
|
|
2017-04-22 14:40:57 +01:00
|
|
|
- Loo[p] over all lines of a file, editing them [i]n-place using a find/replace [e]xpression:
|
2017-04-15 16:48:00 +01:00
|
|
|
|
|
|
|
`perl -p -i -e 's/{{find}}/{{replace}}/g' {{filename}}`
|
|
|
|
|
2017-04-22 14:40:57 +01:00
|
|
|
- Run a find/replace expression on a file, saving the original file with a given extension:
|
2017-04-15 16:48:00 +01:00
|
|
|
|
|
|
|
`perl -p -i'.old' -e 's/{{find}}/{{replace}}/g' {{filename}}`
|
2017-05-13 17:01:12 +01:00
|
|
|
|
|
|
|
- Run a multi-line find/replace expression on a file, and save the result in another file:
|
|
|
|
|
|
|
|
`perl -p0e 's/{{foo\nbar}}/{{foobar}}/g' {{input_file}} > {{output_file}}`
|
2019-09-24 14:00:09 +01:00
|
|
|
|
2021-01-31 17:05:18 +00:00
|
|
|
- Run a regular expression on stdin, printing out the first capture group for each line:
|
2019-09-24 14:00:09 +01:00
|
|
|
|
|
|
|
`cat {{path/to/input_file}} | perl -nle 'if (/.*({{foo}}).*/) {print "$1"; last;}'`
|