fügt einen Text am Anfang der Datei an

7

Ich möchte einen Text oben in meiner Datei data.txt hinzufügen, dieser Code fügt den Text am Ende der Datei hinzu. Wie kann ich diesen Code ändern, um den Text oben in meiner Datei data.txt zu schreiben. Danke im Voraus für jede Hilfe.

%Vor%     
dan 26.05.2011, 15:27
quelle

6 Antworten

6
%Vor%     
tadmc 27.05.2011, 01:10
quelle
7

Ihre Syntax ist etwas aus veraltet (danke, Seth):

%Vor%

Sie müssen die Datei vollständig durchlaufen und die gewünschten Daten vor dem vorhandenen Dateiinhalt ausgeben:

%Vor%

(unentgeltlich aus den Perl FAQ gestohlen, dann modifiziert)

Dadurch wird die Datei Zeile für Zeile verarbeitet, so dass Sie bei großen Dateien nicht unnötig viel Arbeitsspeicher verbrauchen. Aber es ist nicht sehr schnell.

Ich hoffe, das hilft.

    
quelle
7

Es gibt einen viel einfacheren Einzeiler, um einen Textblock an jede Datei anzuhängen. Nehmen wir an, Sie haben eine Reihe von Dateien mit den Namen body1 , body2 , body3 usw., denen Sie einen Textblock voranstellen möchten eine Datei namens header :

%Vor%     
Ken 29.06.2012 23:04
quelle
2

Das Anhängen an die Spitze wird normalerweise als Vorabschaltung bezeichnet.

%Vor%

Öffnen Sie alternativ data.txt- zum Schreiben und verschieben Sie dann data.txt nach dem Schließen in data.txt, was den Vorteil hat, atomar zu sein, so dass Unterbrechungen die Datei data.txt nicht kürzen können.

    
Seth Robertson 26.05.2011 15:37
quelle
2

Siehe Perl FAQ Eintrag zu diesem Thema

    
ADW 26.05.2011 15:44
quelle
0

perl -ni -e 'print "Titel \ n" $. == 1' Dateiname, drucke die Antwort einmal

    
chinmoy khaund 27.09.2012 00:27
quelle

Tags und Links