Substitute a string for a replacement string


Discussion:

Q: How would I write a shell script, change-lines, which will substitute a string for a replacement string for each occurance of the string in files specified?

The script will use

* the option -s "string" for the search string
* the option -r "string" for the replacement string
* the -n option to prevent a backup file from being created
* the -h option to print a usage statement and exit

The script will exit with an error status and print an error message:

* if the -s option is not present.
* if the -r option is not present.
* if the string is not specified with the -s option
* if the string is not specified with the -r option
* if there are any other options specified
* if there are no input files specified
* if the input file cannot be read by the current process
* if the input file cannot be written by the current process
* if you cannot create the backup file.

Here is the usage statement for the script:

change-lines [-n] -s search string -r replace string files ...

-n do not backup the original file
-s search string the search for this string
-r replace string replace the search string with
this string
-h print this message

Examples:

prompt> change-lines -s foobar -r FooBar *.c

This script will edit all the files *.c, and each occurrence of foobar it will be replaced by FooBar it will be replaced by FooBar. Each file will be backed up.

prompt> change-lines -s "SHELL IS NOT FUN" -r "SHELL PROGRAMING IS A LOT OF FUN" /tmp/file1.txt

Solution Preview :

Prepared by a verified Expert
Programming Languages: Substitute a string for a replacement string
Reference No:- TGS01932352

Now Priced at $20 (50% Discount)

Recommended (90%)

Rated (4.3/5)