Anzeige:
Ergebnis 1 bis 4 von 4

Thema: Variablenübergabe bei Aufruf von AWK

  1. #1
    Registrierter Benutzer
    Registriert seit
    28.07.2003
    Ort
    Tirschenreuth
    Beiträge
    81

    Variablenübergabe bei Aufruf von AWK

    Hallo,

    habe ein kleines Problem. Ich möchte ein awk Skript aufrufen und dabei einen externen Parameter mitgeben.

    awk -v Ausgabe="xyz.txt" -f skript.awk dassollbearbeitetwerden.txt

    Das funktioniert nicht. Es kommt die Fehlermeldung, dass er die Datei dassollbe.....txt nicht gefunden hat. Lasse ich das -v und Ausgabe... weg, funktioniert es.

    Ich brauche das aber, da im Skript diese Variable verarbeitet werden soll und ich nicht bei jeder Änderung mehrere Skripte überarbeiten möchte.

    im man awk steht es doch so drin


    Gruss Wackeldackel

  2. #2
    Registrierter Benutzer Avatar von Hans-Georg Normann
    Registriert seit
    04.03.2000
    Ort
    Uetersen
    Beiträge
    571
    Mace es doch in etwa so
    Code:
    export MeinVerzeichnis=/usr/bla/bla
    . Das awk Skript sieht dann so aus
    Code:
    BEGIN {
      AUSGABE=ENVIRON["MeinVerzeichnis"]
    }
    
    # ab hier kommt dann dein Code.
    Hans
    333 Mhz, 466 MHz, neee, ich hab was neues zuhause.....

  3. #3
    Registrierter Benutzer
    Registriert seit
    26.12.2002
    Ort
    Matrix
    Beiträge
    194
    Zitat Zitat von wackeldackel
    im man awk steht es doch so drin
    und genauso klappt es bei mir auch:

    $ cat bla
    {print X; print $0}
    $ cat bla2
    test
    $ awk -v X="1" -f bla bla2
    1
    test
    $ awk --version
    GNU Awk 3.1.1


    -j

  4. #4
    Registrierter Benutzer
    Registriert seit
    28.07.2003
    Ort
    Tirschenreuth
    Beiträge
    81
    Abend,

    danke für die Infos. Werde ich mal testen.

    Ich kapier bloss nicht, warum es nicht so funktioniert wie es dort steht.

    Gruss Wackeldackel

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •