Eine neue Zeile am Anfang der Datei einfügen

Diskutiere Eine neue Zeile am Anfang der Datei einfügen im Shell-Skripte Forum im Bereich Programmieren unter Linux/Unix; Hallo, ich habe ein Problem: Wie kann ich eine Zeile am Anfang einer Datei einfügen ohne ein neues File zu erstellen? "neue Zeile" + alle...

  1. legeti

    legeti Jungspund

    Dabei seit:
    19.10.2006
    Beiträge:
    23
    Zustimmungen:
    0
    Hallo,

    ich habe ein Problem: Wie kann ich eine Zeile am Anfang einer Datei einfügen ohne ein neues File zu erstellen?

    "neue Zeile" + alle anderen Zeilen aus Datei -> Output in die selbe Datei.

    Vielen Dank für eure Unterstützung!
     
  2. Anzeige

    Anzeige

    Wenn du mehr über Linux erfahren möchtest, dann solltest du dir mal folgende Shellkommandos anschauen.


    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. Giglio

    Giglio Doppel-As

    Dabei seit:
    21.12.2006
    Beiträge:
    140
    Zustimmungen:
    0
    Hi,

    musst du halt mit nem kleinen "Hack" machen;

    #! /bin/bash

    echo "neue Zeile" > filename
    cat file >> filename
    rm file
    mv filename file

    Mfg

    Sebi
     
  4. legeti

    legeti Jungspund

    Dabei seit:
    19.10.2006
    Beiträge:
    23
    Zustimmungen:
    0
    danke, aber

    kann man das nicht machen ohne das zusätzliche dateien angelegt werden? mit sed / awk?? Habe mal was mit sed "Zeile i\\TEXT" gefunden das funktioniert bei mir aber nicht!

    Vielen Dank aber schonmal!
     
  5. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Code:
    sed -i '1 i\Textzeile' file
    
    Gruß, Daniel
     
  6. #5 Wolfgang, 09.02.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo
    Dafür gibt es verschiedene Möglichkeiten:
    GNU sed:
    Code:
    sed -e '1s/.*$/Neuer Text\n\&&/g' Inputfile
    
    Perl
    Code:
    perl -p -i -e 'BEGIN{print "Neuer Text\n}' INPUT
    
    Mit reinen Shellmitteln kommst du eine temporäre Datei nicht herum.

    Gruß Wolfgang
     
  7. legeti

    legeti Jungspund

    Dabei seit:
    19.10.2006
    Beiträge:
    23
    Zustimmungen:
    0
    Hi,

    Vielen Dank!! Ich habe aber noch eine Frage!
    Bei der sed Methode von Wolfgang bekomme ich dieses Problem:
    Code:
    sed -e '1s/.*$/Neuer Text\n\&&/g' Inputfile
    gibt er das \&& so aus wie es da steht.

    bei der sed Methode:
    Code:
    perl -p -i -e 'BEGIN{print "Neuer Text\n}' INPUT
    gibt er nur die neue Zeile aus! PS: Da fehlt doch noch ein
    oder?

    Woran liegt das!

    Vielen Dank!
     
  8. Xanti

    Xanti Mouse Organist

    Dabei seit:
    05.09.2004
    Beiträge:
    1.855
    Zustimmungen:
    0
    Da Wolfgang nicht da ist, werde ich mal antworten (ich hoffe, er nimmt's nicht übel ;)):

    Der erste sed-Befehl hat wirklich ein \& zuviel:

    Code:
    sed -i '1s/.*$/Neuer Text\n&/g' file
    
    Beim zweiten Befehl schreibt Perl nicht in den Stream, sondern in die Standard-Ausgabe. Der Grund fällt mir gerade nicht ein. Was aber geht:

    Code:
    perl -pi -e 'print "Neuer Text\n" if (1..1)' file
    
    Und Du hast Recht, es fehlt ein ". Das kann aber immer mal vorkommen, da wir die Lösungen nicht immer überprüfen und eingeschlichene Fehler den Fragenden ruhig auf die Probe stellen können.

    Gruß, Daniel

    P.S.: Nur interessehalber: geht eigentlich meine sed-Lösung?
     
  9. #8 Wolfgang, 13.02.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    @Xanti
    Du bist gerade in die Rolle meines Debuggers geraten.
    (wo und warun nicht war schlaubie...) ;)
    Danke.
    Ja klar, waren einige Fipptehler drin ( wie manchmal, wenn ich das einfach so reinhaue ohne selbst auszuführen).
    Asche auf mein Haupt.
    Ich will das nicht entschuldigen, aber wenn man sich selbst damit auseinandersetzt, wird es schnell klar wo der Fehler liegt.
    Wenigstens ist ein Lösungsansatz dann selbst erkennbar.


    @Xantie
    Klar geht deine Methode (wenigstens mit GNU sed)

    Gruß Wolfgang
     
  10. #9 Schlaubi_fi.de, 13.02.2007
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Entschuldigt Leute mir hat mein Prozessor nicht genügend CPU-Zeit zur Verfügung gestellt, ich war den ganzen gestrigen Tag anderweitig beschäftigt. :D
     
Thema: Eine neue Zeile am Anfang der Datei einfügen
Besucher kamen mit folgenden Suchen
  1. linux erste zeile einfügen

    ,
  2. bash zeile einfügen

    ,
  3. shell zeile am anfang einer datei anfügen

    ,
  4. bash Zeile am anfang einfügen,
  5. sed erste zeile einfügen,
  6. bash Ausgabe Datei oben anfügen,
  7. sed Datei einfügen,
  8. sed zeile einfügen,
  9. linux zeile am anfang einer datei einfügen,
  10. linux head Zeilen einfügen,
  11. sed datei zeile am anfang einfügen,
  12. linux console zeile einfügen,
  13. bash shebang am Anfang einfügen,
  14. bash zeile anfang einfügen,
  15. bash datei anfang einfügen,
  16. shell in dateiianfang ,
  17. bash text einfügen begin datei,
  18. bash zeile vorne anhängen,
  19. bash textdatei erste zeile einfügen,
  20. bash einer Datei eine Zeile hinzufügen,
  21. bash in datei zeile einfügen,
  22. ubuntu befehl erste 2 zeilen in datei einfügen,
  23. textzeile in 2.Zeile einfügen mit batch,
  24. linux datei öfnen unt zeile anhängen,
  25. linux textzeile einfügen
Die Seite wird geladen...

Eine neue Zeile am Anfang der Datei einfügen - Ähnliche Themen

  1. Einen guten Rutsch und ein frohes neues Jahr!

    Einen guten Rutsch und ein frohes neues Jahr!: Die Redaktion von Pro-Linux wünscht allen Lesern einen guten Rutsch und ein erfolgreiches, gesundes und friedliches Jahr 2020. Weiterlesen...
  2. Wie lege ich einen neuen Samba User (Read only) für 2 Ordner an ?

    Wie lege ich einen neuen Samba User (Read only) für 2 Ordner an ?: Wie kann ich einen zusätzlichen Samba User auf AIX anlegen, der nur auf 2 Ordner Read-Only-Rechte bekommen soll ?
  3. Spalten einer Datei in neue Datei integrieren.

    Spalten einer Datei in neue Datei integrieren.: Hallo ich habe folgendes Problem. Ich habe eine Datei mit ca. 39000 Zeilen und entsprechenden Infos. Nun möchte ich gerne von dieser Datei Die...
  4. Framebuffer mit "Bild in Bild" Funktion ODER mehrere Bilder zu einem neuen (nurKonsole)

    Framebuffer mit "Bild in Bild" Funktion ODER mehrere Bilder zu einem neuen (nurKonsole): Moin Zusammen, ich habe einen Monitor mit Raspberry (an vielen Standorten) und wie immer - viel zu viel Informationen um diese gut lesbar...
  5. Mozilla will Thunderbird eine neue Heimat schaffen

    Mozilla will Thunderbird eine neue Heimat schaffen: Eine Projektausschreibung und ein Report auf den Webseiten von Mozilla leiten die endgültige Trennung von Thunderbird und Firefox ein. Weiterlesen...
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden