Tuesday, November 20, 2007

Alternative Search and Replace Tool

Search and replace can be done from linux terminal in many ways. Here's another alternative blog entry on doing string replacements, search and replace via terminal using replace linux command.

Man replace:

The replace utility program changes strings in place in files or on the standard input.


Invoke replace in one of the following ways:

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

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:

shell> replace a b b a -- file1 file2 ...

If you wish to see more of replace description, see replace man page or visit http://dev.mysql.com/doc/.

Here's a sample of replace command tool created and part of MySQL server package.

# cat testfile.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
paper is not paper
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# replace paper clouds -- testfile.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
testfile.txt converted
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# cat testfile.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
clouds is not clouds
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

HTH

0 comments:

Sign up for PayPal and start accepting credit card payments instantly.
ILoveTux - howtos and news | About | Contact | TOS | Policy