Search in one type of files and replace


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Search in one type of files and replace
# 1  
Old 02-17-2015
Search in one type of files and replace

I am not sure how to search and replace the word in the few specific files.

I need to search and replace word in only the name containing pepsi in the filename.
# 2  
Old 02-17-2015
Hello ramkumar,

Following may help you in same.
Code:
find -maxdepth 1 -type f -exec grep -l "pepsi" {} \;

If happy with above comman'd result then you can use following.
Code:
find -maxdepth 1 -type f -exec sed -i "/pepsi/s/pepsi/COLA/g" '{}' \; 2>/dev/null


Thanks,
R. Singh

Last edited by RavinderSingh13; 02-17-2015 at 05:44 AM.. Reason: Added one after maxdepth
# 3  
Old 02-17-2015
I am getting a error as illegal.
Code:
 grep "6738" *pepsi* | xargs sed -i 's/6738/6740/g'

sed: illegal option -- i
Usage: sed [-n] [-e script] [-f source_file] [file...]
# 4  
Old 02-17-2015
Please phrase your request carefully from the beginning!
Do you want to rename files whose names contain "pepsi", or do you want to search files' contents for that word?
# 5  
Old 02-17-2015
Hello ramkumar,

If you want to search file names which have word pepsi ini it and then want to replace a string then following may help.
Code:
find -maxdepth 1 -type f -iname "*pepsi*"

If happy with the results of above, please use following then.
Code:
find -maxdepth 1 -type f -iname "*pepsi*" -exec sed -i "/6738/s/6738/6740/g" '{}' \; 2>/dev/null

Thanks,
R. Singh
# 6  
Old 02-17-2015
request is I need to replace a number 6738 to 6740 only in the file containing name pepsi.

---------- Post updated at 05:13 AM ---------- Previous update was at 05:12 AM ----------

I tried this, but this didn't work
Code:
grep "6738" *pepsi* | xargs sed -i 's/6738/6740/g'

# 7  
Old 02-17-2015
Hello ramkumar,

Did you try command which I have provided in POST#5. Also you should give all information of your request within single post not in bits and pieces. Let us know the OS you are using also on same, also let us know if POST#5 command helps you or not, so that we can understand problem more clearly.


Thanks,
R. Singh

Last edited by RavinderSingh13; 02-17-2015 at 07:45 AM..
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Search replace hostname in htm files

Need assistance in changing the hostname I have multiple html files in a directory , its src is pointing to houston.sp.com and it needs to change to alaska.sp.com . Below is the example Trying to use perl to change it . Need suggestiong <img border="0"... (3 Replies)
Discussion started by: ajayram_arya
3 Replies

2. Shell Programming and Scripting

Search replace with awk using 2 files

I have a bit of a complex problem that I would like to solve with awk. It is essentially a 2-part problem. I have a large directory of files with the same format, each with 266 lines. The first 206 lines of each file are filled with attribute information. Then the following 60 lines consist... (4 Replies)
Discussion started by: owwow14
4 Replies

3. Shell Programming and Scripting

Search and Replace in multiple files

Hello, I have hundreds of files in which I need to change email address. Here is what I am trying to do: 1. All text files are in a directory "a" 2. In the text file, I want to replace email address for preparer. All these lines start with {{PreparerEmail and end with }}. The email... (3 Replies)
Discussion started by: cartrider
3 Replies

4. Programming

Search and replace in two different files

Hi there, i got the following problem. i need a bash script to correct e-mail addresses in an csv. i got a huge csv like this A B C D heiner.holber.somewhere.ch heiner holber heiner.holber@somewhere.ch So A is the wrong... (8 Replies)
Discussion started by: molker
8 Replies

5. UNIX for Dummies Questions & Answers

Search and replace across files

Hi All, HP-UX oradev3 B.11.11 U 9000/800 3251073457 I have following files all contains text like "919642990137@". I need to search this text across all files and replace it with something like "919717298765@". I was wondering, how to accomplish this task? cpmprod_status.sh... (8 Replies)
Discussion started by: alok.behria
8 Replies

6. Shell Programming and Scripting

Search and replace string in files

I'm trying to remove the following string from several files. <img heigth="1" width="1" border="0" src="http://myteenmovies.net/t.php?id=5540372">I'm using the following script #!/bin/bash # This script will search and replace all regular files for a string # supplied by the user and... (1 Reply)
Discussion started by: d13g0sv
1 Replies

7. Shell Programming and Scripting

Search and replace text in many files

Hello, I am very new to Linux and am trying to find a way for following problem. I have a number of files in a folder as Export000.dat, Export001.dat ..and so on. Each file has a string field 'Absolute velocity'. I want it to be replaced by 'Pixel shift' in all the files. I tried something like... (4 Replies)
Discussion started by: chirag.joshi
4 Replies

8. Shell Programming and Scripting

search and replace in many files

I have a directory full of files. Most of the code in the files is the same accept for a few parameter values. I want to remove hard coded values and replace it with a parameter that I can pass. This is oracle pl/sql anonymous blocks. so the code is similiar to this function myfunc (p_myvar ... (1 Reply)
Discussion started by: guessingo
1 Replies

9. Shell Programming and Scripting

Search and Replace between two files

Hi all- I've got 2 files: One is the final results and one is a result set from a query. In the final results files I have placeholder strings in there that need to be replaced by the corresponding strings from the query file. So File#1 (FINAL RESULTS) LINEID CLIENT ID REP ... (1 Reply)
Discussion started by: Cailet
1 Replies

10. Shell Programming and Scripting

fast search and replace in all files

Hi I need to find one string in all files and replace tht string with blank space and need to redirect all the files into the same directory again. now i am using find ./ -name "*.dmp" | xargs perl -pi -e 's/\\N//g' | sed 's/.$//g' but now its not redirrecting properly . its taking... (21 Replies)
Discussion started by: dbsurf
21 Replies
Login or Register to Ask a Question