[nycbug-talk] sed Question

Kevin Reiter tux at penguinnetwerx.net
Thu Mar 30 18:45:42 EST 2006


Ray Lai wrote:
> On Thu, Mar 30, 2006 at 05:52:56PM -0500, Kevin Reiter wrote:
>> All,
>>
>> I know there are a few scripting gurus on this list who might be able to 
>> help me out with this..
>>
>> I'm trying to write a script that does the following:
>>
>> 1. Runs 'fastest_cvsup -c us' to find the fastest cvsup server
>> 2. Assigns the value of "server.txt" (which is the fastest server) to a 
>> variable and then searches my "ports-sup" file for the existing server, 
>> and replaces it with the new one.
>>
>> Sofar, everything works fine until I get to the replacement part of the 
>> script.
>>
>> Here's the script:
>>
>> #!/bin/sh
>>
>> echo ""
>> echo "Finding the fastest cvsup server."
>> echo ""
>> fastest_cvsup -c us | grep 1st | cut -d : -f 2 > server.txt
>> sed 's/^[ \t]*//' server.txt > fast.txt
>> fastest=`cat fast.txt`
>> echo ""
>> echo "The fastest server seems to be: $fastest"
>> echo ""
>> echo ""
>> echo "Here we actually modify the file using sed."
>> echo ""
>> sed '2s/cvsup*.FreeBSD.org/$fastest/' ports-sup
>> echo ""
>> echo Done.
>> rm server.txt
>> rm fast.txt
>>
>> I've tried replacing '$fastest' with 'BLAH' and I'm still doing 
>> something wrong, but I don't know what.  I've been hitting Google pretty 
>> hard for a few days looking for some examples/pointers (which has gotten 
>> me this far) to no avail.
>>
>> I'm looking to replace:
>>
>> *default host=cvsup11.FreeBSD.org
>>
>> with:
>>
>> *default host=cvsup##.FreeBSD.org (where ## is the actual number, like 2 
>> or 14 or whatever.)
>>
>> Any ideas, or pointers to let me know what I'm doing wrong?
> 
> What's the output of server.txt?

cvsup3.us.freebsd.org



More information about the talk mailing list