Replace (command)

From Christoph's Personal Wiki
Jump to: navigation, search
The correct title of this article is replace. The initial letter is capitalized due to technical restrictions.

replace is a Linux utility programme that changes strings in place in files or on the standard input. It uses a finite state machine to match longer strings first. It can be used to swap strings.

Simple example

Suppose you have a bunch of HTML files that have the path string /home/foo and you would like to replace it with /home/bar. You would use the replace utility from the command line as follows:

replace /home/foo /home/bar -- *.html

replace "<b>" "<strong>" -- *.php

replace '<div id="foo">' '<div class="foo">' -- *.php

Usage

replace from to [from to] ... -- file [file] ...
replace from to [from to] ... < file

Description

The replace utility program changes strings in place in files or on the standard input. It 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:

replace a b b a -- file1 file2 ...

Use the -- option to indicate where the string-replacement list ends and the filenames begin.

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.

If no files are named on the command line, replace reads the standard input and writes to the standard output. In this case, no -- option is needed.

The replace program is used by msql2mysql.

Options

Replace supports the following options:

-?, -I 
Display a help message and exit.
-# debug_options 
Write a debugging log. The debug_options string often is 'd:t:o,file_name'.
-s 
Silent mode. Print out less information what the program does.
-v 
Verbose mode. Print out more information what the program does.
-V 
Display version information and exit.

External links