713 Stimmen

Anhängen der Ausgabe an das Ende einer Textdatei

Wie kann ich die Ausgabe eines Befehls an das Ende einer Textdatei anhängen?

8voto

Mangesh Bhapkar Punkte 355

Zum Beispiel enthält Ihre Datei :

 1.  mangesh@001:~$ cat output.txt
    1
    2
    EOF

wenn Sie am Ende der Datei anhängen wollen, dann ---->Leerzeichen zwischen 'Text' >> 'Dateiname' nicht vergessen

  2. mangesh@001:~$ echo somthing to append >> output.txt|cat output.txt 
    1
    2
    EOF
    somthing to append

Und zum Überschreiben des Inhalts der Datei :

  3.  mangesh@001:~$ echo 'somthing new to write' > output.tx|cat output.tx
    somthing new to write

3voto

Eng_Farghly Punkte 924

Unter Linux können Sie Folgendes verwenden cat Befehl zum Anhängen von Dateiinhalten an eine andere Datei

cat fileName_1.txt >> fileName_2.txt

Im vorherigen Befehl werden Sie den Inhalt von fileName_1.txt a fileName_2.txt .

Unter Windows OS können Sie Folgendes verwenden type Befehl

type fileName_1.txt >> fileName_2.txt

Siehe dieses gif-Bild:

enter image description here

1voto

SnacOverflow Punkte 3049

Während alle diese Antworten technisch korrekt sind, dass das Anhängen an eine Datei mit >> ist im Allgemeinen der richtige Weg. Beachten Sie jedoch, dass die Verwendung in einer Schleife, z. B. beim Parsen/Verarbeiten einer Datei, und das Anhängen jeder Zeile an die resultierende Datei viel langsamer sein kann, als Sie erwarten würden.

Eine schnellere Alternative könnte dies sein:

stringBuilder=""
while read -r line; do
  # $'\n' prints a newline so we don't have to know what special chars the string contains
  stringBuilder+="$line"$'\n'
done < "myFile.txt"
echo "$stringBuilder" > $file

WARNUNG: Sie lesen alle Zeilen in den Speicher ein; der Speicher ist eine begrenzte Ressource, daher sollten Sie dies nicht bei riesigen Dateien tun.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X