from
represents a string to look for and
to
represents its replacement. There can be one or more pairs of strings.

Use the
--
option to indicate where the string-replacement list ends and the filenames begin. In this case, any file named on the command line is modified in place, so you may want to make a copy of the original before converting it.
replace
prints a message indicating which of the input files it actually modifies.

If the
--
option is not given,
replace
reads the standard input and writes to the standard output.

replace
uses a finite state machine to match longer strings first. It can be used to swap strings. For example, the following command swaps
a
and
b
in the given files,
file1
and
file2: