[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: 'sed' und Variable als Suchmuster



On Saturday 01 November 2003 16:52, Michelle Konzack wrote:
> Hallo,
>
> Nachdem ich nun eine ganze weile 'man bash' und 'man sed' ein paar mal
> vorwärts und rückwärts gelesen habe muss ich nun doch Fragen:
>
> Ich suche ein verzeichnis ab und wenn eine Benannte datei gefunden
> wird, wird diese gesourced. In dieser Datei steht lediglich eine
> Variable, deren Wert sich von Directory zu Directory ändert.
>
> Also:
>
> if [ `ls FLAGFILE 2>/dev/null` ] ; then
>     source FLAGFILE
>     for i in `ls */*/*` ; do
> 	sed 's/$MY_FLAG//' $i > $i.tmp
> 	mv $i.tmp > $i
>     done
> fi
>
> Mein Problem ist, das mic $MY_FLAG verläßt...
>
> Frage:	Wie kann ich 'sed' davon überzeugen, das er $MY_FLAG als den
> 	String nimmt, den er suchen soll ?
Hallo,
bash ersetzt Variablen nur in "...", aber nicht in '...'. Daher entfernt
sed 's/$MY_FLAG//' $i > $i.tmp 
den String '$MY_FLAG' und nicht den Inhalt der Variable. Um den Inhalt der 
Variable zu ersetzen, braucht man
sed "s/$MY_FLAG//" $i > $i.tmp
>
> Danke
> Michelle
>
> --
> Registered Linux-User #280138 with the Linux Counter,
> http://counter.li.org.



Reply to: