Brauche hilfe bei einen Shell Script "-eq Parameter"

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von vito123, 08.09.2012.

  1. #1 vito123, 08.09.2012
    vito123

    vito123 Grünschnabel

    Dabei seit:
    08.09.2012
    Beiträge:
    3
    Zustimmungen:
    0
    Hallo miteinander,

    bin Neuling in shell Programmierung und brauche etwas Hilfe:

    und zwar möchte ich einige Zeilen aus einer Datei "user.db" auslesen:

    Inhalt aus user.db:

    [account]
    User = Timo
    farbe = red
    Group = 1
    regdate = 2012-08-31

    [account]
    User = Edward
    farbe = green
    Group = 12
    regdate = 2012-03-21

    [account]
    User = Axel
    farbe = white
    Group = 1
    regdate = 2011-09-11

    usw.


    hier ist mein Script (bitte nicht lachen, ist mein erstes Script)

    Code:
    #!/bin/bash
    
    datum=$(date +%Y-%m-%d)
    
    (cat /var/etc/test/user.db | grep -iw "user\|regdate" | cut -d" " -f3,6) > /var/etc/test/test.log
    
    exit 0
    
    was ich vor habe ist user und regdate auszulesen mit einen aber! es sollen nur user ausgelesen werden die älter sind als aktuelles Datum.
    das kriege ich nicht hin...
    von der logik her muss hier der Wert mit -eq Parameter verglichen werden irgend wie so:

    $datum -eq (cat /var/etc/test/user.db | grep -iw "user\|regdate" | cut -d" " -f3,6) > /var/etc/test/test.log

    bitte freundlichst um einen Tipp wie ich am besten das Lösen könnte

    MfG
    vito123
     
  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 zst, 08.09.2012
    Zuletzt bearbeitet: 08.09.2012
    zst

    zst Foren As

    Dabei seit:
    06.09.2006
    Beiträge:
    95
    Zustimmungen:
    0
    Hallo,
    versuch doch mal diesen Weg:
    Code:
    grep -v 2012-09-07 user.db | grep regdate -B3
    
     
  4. #3 vito123, 08.09.2012
    vito123

    vito123 Grünschnabel

    Dabei seit:
    08.09.2012
    Beiträge:
    3
    Zustimmungen:
    0
    danke für den Beispiel, aber damit werden auch User mit neuerem Datum ausgewertet, ich will aber alle User nur mit älteren Datum auswerten, hab schon alle Befehle von grep gegogelt und leider noch keine Lösung für mich gefunden.
     
  5. zst

    zst Foren As

    Dabei seit:
    06.09.2006
    Beiträge:
    95
    Zustimmungen:
    0
    Du hattest geschrieben: "es sollen nur user ausgelesen werden die älter sind als aktuelles Datum."
    Wenn DATUM das aktuelle Datum enthält (in meinem Bsp. der 7.09.2012), dann klappt es doch ...
    ???
     
  6. #5 vito123, 08.09.2012
    vito123

    vito123 Grünschnabel

    Dabei seit:
    08.09.2012
    Beiträge:
    3
    Zustimmungen:
    0
    ja schon, hab mich nicht genau ausgedrückt, habe einige User auch mit neueren Datum z.B.:

    regdate = 2013-03-21
    oder
    regdate = 2012-11-11

    deswegen stehe ich vor dieser Problematik.
     
  7. #6 Spröde, 09.09.2012
    Spröde

    Spröde Alter Sack

    Dabei seit:
    22.01.2012
    Beiträge:
    173
    Zustimmungen:
    0
    Ein kleiner Algorithmus tut hier schon Not:
    Code:
    #!/bin/bash
    
    User=""
    Date=$( date -d 00:00:00 +%s )
    
    while read Line
    do
    
        if [ "${Line##User = }" != "$Line" ]
        then
            User="${Line##User = }"
        fi
    
        if [ "$User" -a "${Line##regdate = }" != "$Line" ]
        then
    
            if [ $( date -d ${Line##regdate = } +%s ) -lt $Date ]
            then
                echo "$User ${Line##regdate = }"
            fi
    
            User=""
        fi
    
    done </var/etc/test/user.db
    
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
Thema:

Brauche hilfe bei einen Shell Script "-eq Parameter"

Die Seite wird geladen...

Brauche hilfe bei einen Shell Script "-eq Parameter" - Ähnliche Themen

  1. Brauche Hilfe bei Lösunge einer Aufgabe

    Brauche Hilfe bei Lösunge einer Aufgabe: In der Dateil /etc/passwd sind zeilenweise alle User aufgelistet. Der Name ist dabei vom Zeilenanfang bis zum ersten Doppelpunkt. Erstellen Sie...
  2. 1:1 NAT brauche Hilfe bei der Erstellung eines Shellscripts

    1:1 NAT brauche Hilfe bei der Erstellung eines Shellscripts: Hi, ich brauche Hilfe bei der Erstellung eines Shellskripts, was nach OpenVPN Neueinwahl die Datei /var/db/opt1_ip parst (in dieser Datei steht...
  3. Brauche hilfe von Profis mit opensuse 11.2

    Brauche hilfe von Profis mit opensuse 11.2: Irgend wie bekomme ich keine internet verbindung hin ob über kde manger oder manuell kann man es auch über der shell einrichten wäre nett wenn ich...
  4. Brauche dringend Hilfe nach System Rücksetzung

    Brauche dringend Hilfe nach System Rücksetzung: Hallo. Leider habe ich nicht viel Ahnung von Linux Programmen und habe nach einem Telefonat mit dem technischen Support von Hercules bei meinem...
  5. Prüfungsvorbereitung Posix Aufgaben, brauche Meinungen oder Hilfe,Danke

    Prüfungsvorbereitung Posix Aufgaben, brauche Meinungen oder Hilfe,Danke: Hallo Leute, habe dieses Semester noch eine Prüfung in Systemprogrammierung und wollte gerne hier die einzelnen Übungsaufgaben vorstellen bzw. mit...