Entfernen Sie Anzahl der bytes vom Anfang der Datei
Ich möchte eine Datei kopieren, ohne die ersten 256 bytes.
Ist es ein schöner Weg, es zu tun in python?
Ich vermute, dass der einfache Weg ist zu Lesen byte-byte mit einem Zähler und starten Sie kopieren nur, wenn er zu 256.
Ich hatte gehofft, für mehr elegante Art und Weise.
Dank.
- Es macht mehr Sinn, wenn Sie Datei Lesen bis zum Ende und dann einfach schreiben, was Sie wollen zu einer anderen Datei.
f.seek(255)
arbeiten könnte. Docs- Ignorieren Sie die Antworten erzählt, die Sie suchen. Es sei denn
file
==regular file
, sucht, wird scheitern. Wennfile
==regular file
im Geist, dann hat man versagt zu grok die Schönheit von unix. - Hi @WilliamPursell , ich habe gerade gelesen, hier und dort. Hat nicht gesehen, der die Warnung über die Datei.suchen. Können Sie erklären, Ihr Kommentar?
fseek
fehl an Rohren, Steckdosen und viele andere Dateien. Es ist nur sinnvoll, wenn regelmäßig Dateien. Die unix-Philosophie plädiert für Programme, die arbeiten können als Filter (mit Rohren anstelle von regulären Dateien), da ein tool ist nützlicher/flexibel, wenn es in der Lage ist, zu arbeiten auf nicht-reguläre Dateien sowie normale Dateien. Mit suchen unnötig, schränkt den nutzen Ihrer Tools.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
seek
zu überspringen, die ersten 256 bytes, dann kopieren Sie die Datei in Blöcken zu vermeiden, das Lesen des gesamten input-Datei in den Speicher. Auch, stellen Sie sicher, dass Siewith
so, dass die Datei ordnungsgemäß geschlossen werden:b''
andernfalls wird die Kopie nicht fertig.