Wie ersetze ich mit sed einen String durch eine Variable in einer Datei?

Wie ersetze ich mit sed einen String durch eine Variable in einer Datei?

Ich habe eine Datei mit einem Text wie:

IP-Adresse="127.0.0.1"

Ich muss die 127.0.0.1 durch eine Variable ersetzen, sagen wir $ip_add, wobei $ip_add=127.0.0.2 der folgende sed-Befehl funktioniert nicht

sed -i 's/127.0.0.1/$ip_add/' conf.py

wenn ich diesen Befehl ausführe, sieht die Textdatei so aus

ipaddress="$ip_adresse"

Bitte helfen Sie. Danke im Voraus

Antwort1

So verwenden Sie Variablen in Anführungszeichen

#!/bin/bash
export ip_add=192.168.1.10
echo "This is my ip: '$ip_add'"

Ein anderer Weg ist wie folgt

#!/bin/bash
export ip_add=192.168.1.10
echo "This is my ip: ${ip_add}"

Wenn Sie im zweiten Beispiel einfache Anführungszeichen verwenden, wird die Variable nicht richtig ersetzt.

verwandte Informationen