Zwei Spalten

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Deneu, 16.07.2008.

  1. Deneu

    Deneu Grünschnabel

    Dabei seit:
    16.07.2008
    Beiträge:
    9
    Zustimmungen:
    0
    Hallo,

    ich bin ein Shell Skript am erstellen welches mir via grep und awk Daten aus einer Log Datei ausließt.
    Im ersten Fall ließt es Usernamen aus $USER im zweiten Part liest es dann Quotas von den jeweiligen Usern aus (stehen 3 zeilen unter dem Usernamen in der log Datei).
    Nun möchte ich das er mir diese Werte ausliest (was er schon macht und dann in ein Tempfile nebeneinander schreibt.

    Also anstatt
    Paul
    Uwe
    Klaus
    Marion
    568
    200
    789
    123

    Möchte ich:
    Paul 568
    Uwe 200
    Klaus 789
    Marion 123

    Wie kann ich das am besten realisieren.
    Code:
    USER=`cat $logfile | grep "Checking user =" | awk '{print $4}' | tr -d ''`;
    QUOTA=`cat $logfile | grep "kbytes in use by" | awk '{print $1}' | tr -d ''`;
    Vielen Dank!

    Gruß
    Philipp
     
  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. #2 NoXqs, 16.07.2008
    Zuletzt bearbeitet: 16.07.2008
    NoXqs

    NoXqs Routinier

    Dabei seit:
    07.05.2007
    Beiträge:
    420
    Zustimmungen:
    0
    Ort:
    Bremen
    Code:
    while read line
    do
    USER=$(awk '{print $4}' $line)
    QUOTA=$(awk '{print $2}' $line)
    echo " ${USER}      ${QUOTA}" >> $output.out
    done < $logfile
    
    ungetesteter Schnellschuss
     
  4. #3 floyd62, 28.07.2008
    Zuletzt bearbeitet: 28.07.2008
    floyd62

    floyd62 Routinier

    Dabei seit:
    01.05.2007
    Beiträge:
    309
    Zustimmungen:
    0
    Evtl. mal so probieren:
    Code:
    awk '
            /Checking user =/       { print $4 }
            /kbytes in use by/      { print $1 }
    ' | paste - -
    
    Wenn in deinem Logfile die Zeilen mit den Usernamen und den Quotas immer schön abwechselnd kommen, sollte awk das ganze eigentlich in einem Durchlauf rausziehen können ...

    Gruss, A.

    2 Minuten Überlegen ... so gehts vielleicht auch:
    Code:
    awk '
            /Checking user =/       { user = $4 }
            /kbytes in use by/      { print user, $1 }
    '
    
    ... damit werden dann aber auch wirklich nur die Usernamen ausgegeben, für die Quota im Log aufgeführt werden ...
     
  5. foexle

    foexle Kaiser

    Dabei seit:
    02.05.2007
    Beiträge:
    1.104
    Zustimmungen:
    0
    Ort:
    Saarbrücken
    also ich würde das auch so wie Nox machen, denke das ist wohl das einfachste

    greetz
     
  6. Deneu

    Deneu Grünschnabel

    Dabei seit:
    16.07.2008
    Beiträge:
    9
    Zustimmungen:
    0
    Vielen Dank.
    Ich habe es jetzt über Arrays gemacht.
     
Thema:

Zwei Spalten

Die Seite wird geladen...

Zwei Spalten - Ähnliche Themen

  1. awk: Bestimmte Spalten in zwei Zeilen vergleichen

    awk: Bestimmte Spalten in zwei Zeilen vergleichen: Moin zusammen! Ich hab ein (glaube ich) ziemlich einfaches Problem mit awk: Wie vergleiche ich, in einer Datei, ein Feld einer Zeile mit exakt...
  2. Systempartition um den Speicherplatz der zweiten Disk erweitern

    Systempartition um den Speicherplatz der zweiten Disk erweitern: Guten Tag liebe Leute Ich habe einen virtuellen Server mit 2 Disk a je 25GB. Nun möchte ich, das meine Hauptpartition um diese zusätzlichen 25GB...
  3. Zweite Systemd-Konferenz Ende September in Berlin

    Zweite Systemd-Konferenz Ende September in Berlin: Die Systemd-Konferenz Ende September in Berlin ist die zweite Konferenz zum System- und Service-Manager Systemd und liegt zeitlich kurz vor der...
  4. Zweite Vorschau auf Android N mit Vulkan-Unterstützung

    Zweite Vorschau auf Android N mit Vulkan-Unterstützung: Einen Monat nach der ersten hat Google eine zweite Vorschau auf die kommende Android-Version und zugehörige Werkzeuge vorgestellt. Neu sind in...
  5. Neuer Kernel-Zweig nur für Sicherheitskorrekturen

    Neuer Kernel-Zweig nur für Sicherheitskorrekturen: Sasha Levin von Oracle hat angekündigt, von den stabilen Kernel-Versionen eigene Versionen pflegen zu wollen, die bis auf Sicherheitskorrekturen...