awk: printf schlägt fehl, wenn Steuerzeichen im Argument

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von FrankSchmitz, 15.05.2008.

  1. #1 FrankSchmitz, 15.05.2008
    FrankSchmitz

    FrankSchmitz Jungspund

    Dabei seit:
    23.04.2007
    Beiträge:
    23
    Zustimmungen:
    0
    Hallo zusammen,

    ich hatte bis eben (für mich) unerklärliche Probleme, wenn ich mit dem folgenden AWK eine Datei durchlaufen habe, die ein Prozentzeichen enthielt (ich bin schon mal froh, dass ich das als Auslöser identifiziert habe).

    Code:
    nawk -F\; '{
       printf("Datensatz: "$3";"$1"\n");
    }' testdatei.dat
    Dann kam der Fehler: nawk: not enough args in printf(...

    Wie kann ich das denn so markieren, dass ich keine Probleme mehr hab´? :think:
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    In dem Beispiel, das Du zeigst, sind die '"' nicht ausgeglichen, d.h., es ist eine ungerade Anzahl. Wenn Du Kontrollzeichen ausgeben moechtest, reicht es meistens, sie zu 'escapen', d.h., einen Backslash '\' direkt voranzustellen.
    Code:
    nawk -F\; '{
       printf("Datensatz: \"$3\";\"$1\"\n");
       printf("Hier noch ein Prozentzeichen: \%\n");
    }' testdatei.dat
    
     
Thema:

awk: printf schlägt fehl, wenn Steuerzeichen im Argument

Die Seite wird geladen...

awk: printf schlägt fehl, wenn Steuerzeichen im Argument - Ähnliche Themen

  1. "printf" ausgabe hinten anhängen

    "printf" ausgabe hinten anhängen: hallo, ich hänge bei meinem script immer an der gleichen Stelle... ipPrefix="192.168.38"; # erster Teil der IP-Adresse...
  2. printf Formatierung: echo schreibt bei Ausgabeumleitung auf File nichts. Wieso?

    printf Formatierung: echo schreibt bei Ausgabeumleitung auf File nichts. Wieso?: #!/bin/sh ZAHL="372" FARBE="gelb" printf "%s%06d%s" "Bearbeitungsnummer 888" $ZAHL ", Farbe: $FARBE" echo printf "%s%06d%s" "Bearbeitungsnummer...
  3. printf modifizieren und stdout capturn

    printf modifizieren und stdout capturn: Hallo, ich moechte das Verhalten aller *printf Funkionen modifizieren und zwar sollen diese statt auf stdout in char strings schreiben. Mit...
  4. find -printf und sekundendarstellung

    find -printf und sekundendarstellung: Hallo, nach einem Ditsributionsupdate meiner Linuxdistribution gab es Probleme mit einem Skript. Folgendes Beispiel: find *.rm -type f -printf...
  5. echo/printf Formatierung (Ausrichtung)

    echo/printf Formatierung (Ausrichtung): Hallo, kann man echo bzw. printf dazu bringen, Text rechtsbündig auszugeben? Oder muss man da awk bemühen? Wie macht man das?