SED on multiple files


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers SED on multiple files
# 1  
Old 02-01-2010
SED on multiple files

Hello all,

Search & replace works fine using sed on a single file.

Ex:
sed -i 's/day/night/g' test1.sh

There are many *.sh files in my current directory that I would like use sed on. I tried running the sed command using wild card but it did not work.

sed -i 's/day/night/g' *.sh

Any ideas?

Thanks.
# 2  
Old 02-01-2010
Strange. What happens when you issue:
Code:
ls -l *.sh

do you get the expected result?
# 3  
Old 02-01-2010
Code:
for fname in *.sh
do
   sed -i 's/day/night/' $fname > tmp.tmp
   mv tmp.tmp $fname    
done

# 4  
Old 02-01-2010
Scrutinizer,
When I run ls -l *.sh I get correct results.

Jim,
I'm trying to use a single command if possible.


Thanks to both of you for your valuble time.
# 5  
Old 02-01-2010
Strange. It work for me.

Can you describe me what are the results? Any output printed maybe? Have any file changed? Can you see if timestamps for the files are being uploaded?
# 6  
Old 02-02-2010
improvement to Jim M. script


Code:
for fname in *.sh
do
   perl -pi -e 's/day/night/'    $fname  
done

# 7  
Old 02-08-2010
Thanks for your time and responses. Let me try out all your seggestions and keep you posted.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Using sed to edit multiple files

Created a shell script to invoke sed to edit multiple files, but am missing something. Here's the shell script: oracle:$ cat edit_scripts.sh #!/bin/sh #------------------------------------------------------------------------------ # edit_scripts.sh # # This script executes sed to make global... (4 Replies)
Discussion started by: edstevens
4 Replies

2. Shell Programming and Scripting

sed parser behaving strange on replacing multiple words in multiple files

I have 4000 files like $cat clus_grp_seq10_g.phy 18 1002 anig_OJJ65951_1 ATGGTTTCGCAGCGTGATAGAGAATTGTTTAGGGATGATATTCGCTCGCGAGGAACGAAGCTCAATGCTGCCGAGCGCGAGAGTCTGCTAAGGCCATATCTGCCAGATCCGTCTGACCTTCCACGCAGGCCACTTCAGCGGCGCAAGAAGGTTCCTCG aver_OOF92921_1 ... (1 Reply)
Discussion started by: sammy777888
1 Replies

3. Homework & Coursework Questions

Shell Script to sed with Multiple Files

I am not sure what I am doing wrong here. The code should work fine. I have been making small changes insuring that each new bit works. Now running my sed through multiple files I am getting incorrect output. Any help and instruction would be greatly appreciated. The problem - Generalize... (10 Replies)
Discussion started by: Lycopene
10 Replies

4. Homework & Coursework Questions

Help with Shell Scripts Using sed in multiple files.

Hi, I was hoping that someone could help me. I have a problem that i am trying to work on and it requires me to change text within multiple files using sed. What i have so far is !/bin/sh File1="$3" File2="$4" File3="$5" testNum="$File1" while test "$testNum" <= "$File3"; do echo... (12 Replies)
Discussion started by: Johnny2518
12 Replies

5. Shell Programming and Scripting

Help with Shell Scripts Using sed in multiple files.

Hi, I was hoping that someone could help me. I have a problem that i am trying to work on and it requires me to change text within multiple files using sed. I use the program to change an occurance of a word throughout different files that are being tested. At first i had to Create a new script,... (1 Reply)
Discussion started by: Johnny2518
1 Replies

6. Shell Programming and Scripting

SED command using multiple input files

What is the syntax to use multiple input files in a SED command. i.e. substitute a word with a phrase in every file in a directory. for every file in /usr/include that has the word "date" in the file grep -l '\<date\>' /usr/include/*.h find each occurrence of the word "time" in the file &... (3 Replies)
Discussion started by: sheoguey
3 Replies

7. UNIX for Dummies Questions & Answers

best method of replacing multiple strings in multiple files - sed or awk? most simple preferred :)

Hi guys, say I have a few files in a directory (58 text files or somthing) each one contains mulitple strings that I wish to replace with other strings so in these 58 files I'm looking for say the following strings: JAM (replace with BUTTER) BREAD (replace with CRACKER) SCOOP (replace... (19 Replies)
Discussion started by: rich@ardz
19 Replies

8. UNIX for Dummies Questions & Answers

sed on multiple files?

Hi, I want to do a search and replace on multiple text files. Can I use sed to do this? i.e. I want to do something like: $ sed *.html -e 's/<\/body>/<\!-- blah -->\n<\/body>/' | grep -1 body ... then pipe/ channel the results back into the same files that were searched. how would... (2 Replies)
Discussion started by: mgrahamnz
2 Replies

9. Shell Programming and Scripting

how to use multiple files in sed with w command

i have a command like : sed -n 's/^* /&/w even' <file if i want to write to multiple files like sed -n 's/^* /&/w zero two three' < file its not working it is taking "zero two three" as a single file i want to write to 3 seperate files . pls can anyone help me (2 Replies)
Discussion started by: santosh1234
2 Replies

10. UNIX for Dummies Questions & Answers

sed across multiple files

I've got a bunch of files (40 or so) and in each there is a substitution I need to perform. I execuet the following sed command but it just make the changes to the screen without affecting the original file. sed "s/, LA/,LA/g" * (All files in the directory need this update). So I tried... (4 Replies)
Discussion started by: peter.herlihy
4 Replies
Login or Register to Ask a Question