Nach String suchen und zeile ersetzen ?

Bash, Shell, PHP, Python, Perl, CGI
mezga
Posts: 147
Joined: 2002-12-10 13:59

Nach String suchen und zeile ersetzen ?

Post by mezga »

Hi,

bin gerade dabei ein kleines Script (Linux, Bash) zu schreiben.

Jetzt will ich in einer Datei my.cnf nach /var/log/mysql.log suchen und bei dem Ergebniss dann die komplette Zeile durch #/var/log/mysql.log ersetzen.

Also wie ich nur das gefundene ersetze ist klar

sed -e s:/var/log/mysql.log:#/var/log/mysql.log:g < /my.cnf > /my.cnfn

aber ich möchte die ganze Zeile ersetzen und nicht nur das "/var/log/mysql.log". (Davor steht noch log= und das muss weg)


Weis da jemand rat ?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Nach String suchen und zeile ersetzen ?

Post by captaincrunch »

sofern das das einzige "log=" im File ist, dürfte folgendes klappen :

Code: Select all

sed -e s:/(^log=.*):#1:g < /my.cnf > /my.cnfn
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: Nach String suchen und zeile ersetzen ?

Post by captaincrunch »

So, jetzt hab ich's mal getestet, so klappt's nicht. Folgendes bringt dich aber weiter :

Code: Select all

sed 's/(^log.*)/#1/g' my.cnf > my.cnf.bak
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
mezga
Posts: 147
Joined: 2002-12-10 13:59

Re: Nach String suchen und zeile ersetzen ?

Post by mezga »

Ja, vielen Dank !!! Mit dem Funktionierts.

Jetzt erstmal kucken warums funktioniert :lol: