bionic (1) pesubst.1.gz

Provided by: hxtools_20170430-1_amd64 bug

Name

       pesubst — perl-regexp stream substitution

Syntax

       pesubst [-f] [-s pattern] [-d pattern] [-m modifiers] file...

Description

       pesubst  can  substitute strings in streams and files, and does so by using the Perl engine. It obsoletes
       sed(1) for simple substitution tasks.

Options

       -f     Fill the replacement string with NULs to bring it up to the size of the original string.

       -s pattern
              Source pattern to search for in files. This can be any valid Perl regular  expression.  Files  are
              slurped in as a whole, so matching across newlines should be no problem (with the -ms flag).

       -d pattern
              Destination  (replacement) string. This can be any valid string Perl accepts.  For details see the
              perlre(1) manpage.

       -m modifiers
              A string of modifiers to apply to the regex. See below.

Modifiers

       e      Evaluate the right side as an expression.

       g      Replace globally, i.e., all occurrences. This is always enabled in pesubst.

       i      Do case-insensitive pattern matching.

       m      Treat string as multiple lines. That is, change "^" and "$" from matching the start or end of  the
              string to matching the start or end of any line anywhere within the string.

       o      Compile pattern only once.

       s      Treat  string  as  single  line.  That  is,  change  "." to match any character whatsoever, even a
              newline, which normally it would not match.

       x      Extend your pattern's legibility by permitting whitespace and comments.

Examples

       Change all occurrences of foo (case-insensitive) to bar:

            pesubst -s foo -d bar -ms myfile

       Change all Shell-style comments into C++ ones:

            pesubst -s '^#' -d // -mm myfile

       Using both the "m" and "i" flags:

            pesubst -s '^#INCLUDE\s+' -d '#include ' -mmi myfile.c

See also

       hxtools(7), pegrep(1)