Suchen und Ersetzen eines Pfadnamens in Linux mit sed

Suchen und Ersetzen eines Pfadnamens in Linux mit sed

Ich versuche, einen Pfadnamen in einem Shell-Skript zu ersetzen. Ich habe mir Dutzende Beispiele dazu angesehen, aber ohne Erfolg.

Ich möchte ersetzen "/home/imp"durch"/home/rg"

Danke.

Antwort1

versuchen

sed -i s:/home/imp:/home/rg:g filename
  • keine Anführungszeichen erforderlich, wenn keine Sonderzeichen
  • -isagen Sie sed, dass es direkt editieren soll
  • Trennzeichen kann jedes beliebige Zeichen sein, ich verzichte :auf Backslashs/
  • sist für Ersatz
  • gist für global (mehrere Ersetzungen pro Zeile)

Antwort2

sed 's/\/home\/imp/\/home\/rg/g' filename

sed -izum Bearbeiten der Datei an Ort und Stelle verwenden

verwandte Informationen