bebpo: Shell: ...Zeile hinzufügen

hi,
wie kann man mit einem einfachen shell script einer textdatei am ende jeder zeile, die nicht leer ist, einen string 'foo' hinzufügen?
thanks

  1. hi,

    wie kann man mit einem einfachen shell script einer textdatei am ende jeder zeile, die nicht leer ist, einen string 'foo' hinzufügen?
    thanks

    ==================script==
    #!/bin/sh
    echo foo >> textdatei

    --roro

    1. Hallo Rolf,

      wie kann man mit einem einfachen shell script einer textdatei am ende jeder zeile,

      am Ende jeder Zeile

      die nicht leer ist, einen string 'foo' hinzufügen?

      ==================script==
      #!/bin/sh
      echo foo >> textdatei

      und nicht einen einzigen Eintrag ans Ende der Datei :-)

      Freundliche Grüße

      Vinzenz

  2. Hallo

    wie kann man mit einem einfachen shell script

    welche Shell, welches Betriebssystem?

    einer textdatei am ende jeder zeile, die nicht leer ist,

    was verstehst Du unter einer "nicht leeren Zeile"?
    Eine Zeile, die nur aus dem systemspezifischen Zeilenende besteht?

    einen string 'foo' hinzufügen?

    aber doch _vor_ dem/den Zeichen für das Zeilenende?

    Freundliche Grüße

    Vinzenz

  3. gudn tach!

    wie kann man mit einem einfachen shell script einer textdatei am ende jeder zeile, die nicht leer ist, einen string 'foo' hinzufügen?

    cat file | sed -e "s/^(.+)$/\1foo/" > file_new

    evtl. brauchst du dafuer http://unxutils.sourceforge.net/.

    prost
    seth

    1. gudn tach!

      cat file | sed -e "s/^(.+)$/\1foo/" > file_new

      hmm, auch das geht noch etwas kuerzer:

      cat file | sed -e "s/(.)$/\1foo/" > file_new

      prost
      seth

  4. perl -pe's/(.*)/$1foo/ unless /^$/' < in.file > out.file

    Die Portierung nach sed bleibt dem geneigten Leser als Übung überlassen.

    --
    水-金-地-火-木-土-天-海-冥
    1. gudn tach!

      perl -pe's/(.*)/$1foo/ unless /^$/' < in.file > out.file

      geht sogar noch kuerzer:
        perl -pe's/(.+)/$1foo/' < in.file > out.file
      oder
        perl -pe's/(.)$/$1foo/' < in.file > out.file

      prost
      seth