Seite 1 von 1

frage bzgl: textfile Editierung

Verfasst: Samstag 20. Februar 2010, 22:39
von yashi
Hi,

ich versuche gerade mit Python eine textdatei zu editieren.
Genauer gesagt möchte ich in eine vorhandene "volle" datei etwas dazwischen schreiben.
D.h. also nicht einfach ans ende setzen.

meine bisherige idee sieht so aus:

Code: Alles auswählen

#!/sbin/python

import os

file = open('wpa_supplicant.conf','a')
pos = file.tell()
file.write('bla')
file.seek(-20,2)
file.close()

print pos
und wie ihr euch denken könnt geht sie nicht :P
der cursor wird zwar versetzt aber geschrieben wird trotzdem einfach ans ende..ich vermute mal wegen dem 'a' :/

konkret möchte ich das ergebnis der systemfunktion wpa_passphrase auslesen, wenn es auch direkt möglich ist ein ergebnis aus der konsole direkt in python zu integrieren wäre das natürlich auch super...
ich wollte jetzt einfach die batch in eine datei umleiten und diese datei dann editieren und zu meinem ergebnis machen...macht zwar letztlich keinen unterschied aber schöner wäre es natürlich wenn mein programm die datei selbst erstellen würde

hoffe ihr könnt mir helfen


edit:

hat sich schon erledigt :/ wusste nicht das man dateien erst komplett einlesen muss um sie zubearbeiten...
macht aber irgendwie sinn :lol:

Verfasst: Montag 22. Februar 2010, 14:49
von mkesper
Das fileinput-Modul kennt ein Keyword-Argument inplace. Mit inplace=1 wird so getan, als könntest du die Datei editieren (bißchen runterscrollen in der Doku).