#!/usr/bin/perl -spi.orig # same as -s -p -i.orig
+A C<--> signals the end of options and disables further option processing. Any
+arguments after the C<--> are treated as filenames and arguments.
+
Switches include:
=over 5
An alternate delimiter may be specified using B<-F>.
+B<-a> implicitly sets B<-n>.
+
=item B<-C [I<number/list>]>
X<-C>
=item B<-F>I<pattern>
X<-F>
-specifies the pattern to split on if B<-a> is also in effect. The
-pattern may be surrounded by C<//>, C<"">, or C<''>, otherwise it will be
-put in single quotes. You can't use literal whitespace in the pattern.
+specifies the pattern to split on for B<-a>. The pattern may be
+surrounded by C<//>, C<"">, or C<''>, otherwise it will be put in single
+quotes. You can't use literal whitespace in the pattern.
+
+B<-F> implicitly sets both B<-a> and B<-n>.
=item B<-h>
X<-h>
specified in the extension then it will skip that file and continue on
with the next one (if it exists).
-For a discussion of issues surrounding file permissions and B<-i>,
-see L<perlfaq5/Why does Perl let me delete read-only files? Why does -i clobber protected files? Isn't this a bug in Perl?>.
+For a discussion of issues surrounding file permissions and B<-i>, see
+L<perlfaq5/Why does Perl let me delete read-only files? Why does -i clobber
+protected files? Isn't this a bug in Perl?>.
You cannot use B<-i> to create directories or to strip extensions from
files.
B<'-MI<MODULE> qw(foo bar)'>. This avoids the need to use quotes when
importing symbols. The actual code generated by B<-MI<MODULE>=foo,bar> is
C<use module split(/,/,q{foo,bar})>. Note that the C<=> form
-removes the distinction between B<-m> and B<-M>.
+removes the distinction between B<-m> and B<-M>; that is,
+B<-mI<MODULE>=foo,bar> is the same as B<-MI<MODULE>=foo,bar>.
A consequence of this is that B<-MI<MODULE>=number> never does a version check,
unless C<I<MODULE>::import()> itself is set up to do a version check, which
#!/usr/bin/perl -s
if ($xyz) { print "$xyz\n" }
-Do note that a switch like B<--help> creates the variable C<${-help}>, which is not compliant
-with C<use strict "refs">. Also, when using this option on a script with
-warnings enabled you may get a lot of spurious "used only once" warnings.
+Do note that a switch like B<--help> creates the variable C<${-help}>, which is
+not compliant with C<use strict "refs">. Also, when using this option on a
+script with warnings enabled you may get a lot of spurious "used only once"
+warnings.
=item B<-S>
X<-S>
C<__WARN__> hooks, as described in L<perlvar> and L<perlfunc/warn>.
See also L<perldiag> and L<perltrap>. A fine-grained warning
facility is also available if you want to manipulate entire classes
-of warnings; see L<warnings> or L<perllexwarn>.
+of warnings; see L<warnings>.
=item B<-W>
X<-W>
-Enables all warnings regardless of C<no warnings> or C<$^W>.
-See L<perllexwarn>.
+Enables "all" warnings regardless of C<no warnings> or C<$^W>.
+See L<warnings>.
=item B<-X>
X<-X>
-Disables all warnings regardless of C<use warnings> or C<$^W>.
-See L<perllexwarn>.
+Disables "all" warnings regardless of C<use warnings> or C<$^W>.
+See L<warnings>.
=item B<-x>
X<-x>
code. By manually setting a seed, this protection may be partially or
completely lost.
-See L<perlsec/"Algorithmic Complexity Attacks"> and L</PERL_PERTURB_KEYS>
+See L<perlsec/"Algorithmic Complexity Attacks">, L</PERL_PERTURB_KEYS>, and
L</PERL_HASH_SEED_DEBUG> for more information.
=item PERL_PERTURB_KEYS
X<PERL_PERTURB_KEYS>
(Since Perl 5.18.0) Set to C<"0"> or C<"NO"> then traversing keys
-will be repeatedable from run to run for the same PERL_HASH_SEED.
+will be repeatable from run to run for the same PERL_HASH_SEED.
Insertion into a hash will not change the order, except to provide
for more space in the hash. When combined with setting PERL_HASH_SEED
this mode is as close to pre 5.18 behavior as you can get.
When set to C<"1"> or C<"RANDOM"> then traversing keys will be randomized.
Every time a hash is inserted into the key order will change in a random
-fashion. The order may not be repeatedable in a following program run
+fashion. The order may not be repeatable in a following program run
even if the PERL_HASH_SEED has been specified. This is the default
mode for perl.
When set to C<"2"> or C<"DETERMINISTIC"> then inserting keys into a hash
-will cause the key order to change, but in a way that is repeatedable
+will cause the key order to change, but in a way that is repeatable
from program run to program run.
B<NOTE:> Use of this option is considered insecure, and is intended only