Zeile in Datei ersetzen
Verfasst: Mittwoch 27. Juni 2007, 13:49
Hallo zusammen
In einem Konfigurations-File steht in einer Zeile "enable = 0". Nun möchte ich diese Zeile auf "enable = 1" ändern. Später natürlich auch noch umgekehrt von 1 auf 0. In meinem Skript habe ich wohl einen Denkfehler, denn der Zugriffzeitpunkt auf die Datei wird aktualisiert, aber sonst passiert nichts, obwohl die Zeichenfolgen (das Ergänzen von \n hat keine Auswirkungen) exakt übereinstimmen. Ich nehme an, dass ich mit der Schlaufe alle ins Nirwana schicke.
Ich habe mir auch überlegt, dass ich mit seek arbeiten könnte, jedoch scheint mir diese Möglichkeit hier für ein später Recyclen fast besser geeignet.
Vielen Dank und Gruss
Fabian
In einem Konfigurations-File steht in einer Zeile "enable = 0". Nun möchte ich diese Zeile auf "enable = 1" ändern. Später natürlich auch noch umgekehrt von 1 auf 0. In meinem Skript habe ich wohl einen Denkfehler, denn der Zugriffzeitpunkt auf die Datei wird aktualisiert, aber sonst passiert nichts, obwohl die Zeichenfolgen (das Ergänzen von \n hat keine Auswirkungen) exakt übereinstimmen. Ich nehme an, dass ich mit der Schlaufe alle ins Nirwana schicke.
Code: Alles auswählen
import fileinput, string, sys
search_text = "enable = 0"
replace_text = "enable = 1"
# leere Zeilen uebergehen und dann suchen/ersetzen
for line in fileinput.input("test1.txt",inplace=1):
lineno = 0
lineno = string.find(line, search_text)
if lineno >= 0:
line = line.replace(search_text, replace_text)
sys.stdout.write(line)
Vielen Dank und Gruss
Fabian