Welcome to WebmasterWorld Guest from 50.19.34.234

Forum Moderators: bakedjake

Message Too Old, No Replies

remove lines in multiple files

SED, Perl, Delete lines, multiple files

     

travlang

11:22 pm on Jun 14, 2009 (gmt 0)

10+ Year Member



I need to remove line numbers 6 to 106 on over 100000 html files. I tried sed

sed '6,106d' *.html
but this outputs to the screen
sed '6,106d' x.html > x.bak
works but I cannot do one file at a time. Does anyone know of a way to use wildcards in the output file or of a script that will go through every file in a directory and remove those numbered lines
Thanks
Howard

bkeep

4:17 pm on Jun 27, 2009 (gmt 0)

5+ Year Member



Have you tried using find?

find . -type f -name "*.html" -exec sed '6,106d' {} > {}.bak \;

phranque

12:00 pm on Jul 26, 2009 (gmt 0)

WebmasterWorld Administrator phranque is a WebmasterWorld Top Contributor of All Time 10+ Year Member Top Contributors Of The Month



or use a for loop:
for i in *.html; do
sed '6,106d' $i > $i.bak
done
 

Featured Threads

Hot Threads This Week

Hot Threads This Month