String replacement


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting String replacement
# 1  
Old 01-21-2009
String replacement

Hi I am new to shell scripting but i manage to do some simple things.
I am trying to replace a string in one file. I am using sed to replace but it is not permanently writing to the file, rather it is temporary. I want to know whether is there any another method to replace a string in a file permenantly.

THIS IS WHAT I HAVE DONE:
=====================

$ cat conf.txt
This is first line which contains NO
This is second line which contains NO
This is thrid line which contains NO

I used sed to replace NO with YES in 2nd line.

$cat -n conf.txt | grep 2 | sed 's/NO/YES/g'

2 This is second line which contains YES

But i want this to happen in the file. I want the replacement to be happened in file(2nd line though).

Please guide me regarding the same and correct me if iam wrong. Smilie

Thanks in advance.
ss
# 2  
Old 01-21-2009
With awk:

Code:
awk 'NR==2{gsub("NO","YES")}1' file

Regards
# 3  
Old 01-21-2009
Quote:
Originally Posted by Franklin52
With awk:

Code:
awk 'NR==2{gsub("NO","YES")}1' file

Regards

Thank you very much for the help.

But the file is not getting updated with the change.

Say for example, if the command is run, the file should be changed with the output it produces.
# 4  
Old 01-21-2009
Code:
awk 'NR==2{gsub("NO","YES")}1' file > newfile && mv newfile file

Regards
# 5  
Old 01-21-2009
Code:
sed -e '2s/NO/YES/' file > newfile && mv newfile file

# 6  
Old 01-21-2009
Quote:
Originally Posted by Franklin52
Code:
awk 'NR==2{gsub("NO","YES")}1' file > newfile && mv newfile file

Regards

Thats great its working fine.
I have one more doubt... If i want to change the line number dynamically, ex: using some variable which gets input from user.

awk 'NR=="$i"{gsub("NO","YES")}1' conf.txt

Very sorry if im silly...

Thankf for you help.Smilie
# 7  
Old 01-21-2009
Code:
awk -v lin=${userInputLine} 'NR==lin {gsub("NO","YES")}1' conf.txt

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Parallel replacement string

Hi, Using the following command, I can only get rid of the last extension from my input file name: parallel command '>' {.}.output ::: my.input.file The output file is "my.input.output" How can I get rid of the last two extensions of my input file name, so that end up with "my.output"?... (4 Replies)
Discussion started by: forU
4 Replies

2. Shell Programming and Scripting

String replacement

Hi, I have a text file where all records come in one line (single line file), each record starts with 'BUCH' and ends with '@&' and if data is not there we get space instead. between '@&' and next record there might be some spaces, now I want to remove those spaces between '@&' and 'BUCH'. ... (4 Replies)
Discussion started by: maks475
4 Replies

3. Shell Programming and Scripting

String replacement.

Dear Friends, I want to replace following line with given line. It should grep/search following string in a file (input.txt) M/M SRNO: 000M/6200-0362498 COSMETIC PRO MALE FEMALE Once found it should replace it to following string. T_DLHNNO: 000M/6200-0362498 ... (7 Replies)
Discussion started by: anushree.a
7 Replies

4. Shell Programming and Scripting

String replacement

Hi All, I have below file which has data in below format. #$ | AB_100 | AB_300 ()| AB_4 @*(% | AB-789 i want o/p as below format. | AB_100 | AB_300 | AB_4 | AB-789 So here there is no standard format. How we can achieve the same in unix ? Regards, (3 Replies)
Discussion started by: gander_ss
3 Replies

5. Shell Programming and Scripting

String replacement using sed

I need to search and replace a particular string in a file. Only the exact match of the string should be replaced. eg: File contents : abc abcd abcdef --> Replace only 'abc' with 'xyz', but it should not replace abcd with xyzd. So the o/p should be: xyz abcd abcdef. How can this be done? I... (5 Replies)
Discussion started by: sngk
5 Replies

6. Shell Programming and Scripting

String replacement

I have one string string1=user/password:IP_ADDR:Directory I need to replace string1 value like store into string2 string2=user password:IP_ADDR:Directory i.e replace "/" character by '<space>' character But i wouldn't use any file in the meantime. Please help me......................... (6 Replies)
Discussion started by: mnmonu
6 Replies

7. Shell Programming and Scripting

Replacement of string

Hi I have a text file which contains the following. AAA,BBB,CCC,DDD AAA,BBB,CCC,DDD AAA,BBB,CCC,DDD How can I replace all CCC with 888, with other contents inside the file remain unchange? Please advice Desired output: AAA,BBB,888,DDD AAA,BBB,888,DDD AAA,BBB,888,DDD (1 Reply)
Discussion started by: c0384
1 Replies

8. Shell Programming and Scripting

AWK String replacement

I have an xml file with following tags <NewTag>value123</xyz> <NewTag>value321</abcd> I have to replace the values in between the tags with some value ( VAL1/VAL2) but the thing the ending tag can be any thing, for this i need a awk command currently i am using this but it... (5 Replies)
Discussion started by: subin_bala
5 Replies

9. Shell Programming and Scripting

String Replacement Script

Okay, I have a script right now that is made to search through a file and replace certain strings with a new one. The format to execute is "/subst <replacethis> <withthis> <filename>" and it only updates the file IF changes are made (in order to preserve the time it was made/last modified). I have... (6 Replies)
Discussion started by: jbud
6 Replies

10. Shell Programming and Scripting

sed problem - replacement string should be same length as matching string.

Hi guys, I hope you can help me with my problem. I have a text file that contains lines like this: 78 ANGELO -809.05 79 ANGELO2 -5,000.06 I need to find all occurences of amounts that are negative and replace them with x's 78 ANGELO xxxxxxx 79... (4 Replies)
Discussion started by: amangeles
4 Replies
Login or Register to Ask a Question