Anzeige:
Ergebnis 1 bis 3 von 3

Thema: problem mit einer schleife ( bash )

  1. #1
    Registrierter Benutzer
    Registriert seit
    01.10.2002
    Beiträge
    25

    problem mit einer schleife ( bash )

    ich habe mir folgendes kleines Skript gemacht:

    eigentlich ganz einfach, 1 + 2 prüft die Postfächer und gibt die header zurück, mit 3 + 4 kann ich dann pro Konto die mails durch die Übergabe der Nummern löschen

    #!/bin/bash
    #Programm dialog.sh

    tonline=
    puretec=
    loescht=
    loeschpur=


    gdialog --clear --checklist \
    'Mail-Check' 20 60 8 \
    '1' 'T-Online' off \
    '2' 'Puretec' off \
    '3' 'T-Online-loeschen' off \
    '4' 'Puretec-loeschen' on 2> ~/tmp.$$

    options=$(cat ~/tmp.$$)
    rm ~/tmp.$$

    for i in $options; do
    case "$i" in
    \"1\" ) tonline=tonline;;
    \"2\" ) puretec=puretec;;
    \"3\" ) T-Online-loeschen=loescht;;
    \"4\" ) Puretec-loeschen=loeschpur;;

    esac
    done

    for i in $tonline; do
    echo "Hole Mail von T-online"
    popme.pl -h -s defaulttag > mailtemp
    x=$(cat mailtemp)
    gdialog --infobox "Nachrichten: $x" 5 70
    rm mailtemp
    done

    for i in $puretec; do
    echo "Hole Mail von Puretec"
    popme.pl -h -s puretec > mailtemp
    x=$(cat mailtemp)
    gdialog --infobox "Nachrichten: $x" 5 70
    rm mailtemp
    exit 0
    done

    for i in $loescht; do
    echo "lösche Mail von T-online"
    gdialog --clear --title Nr-Tonline --inputbox "Nachrichtennummern eingeben" 10 60 2> eingabe.tmp
    eingabe=$(cat eingabe.tmp)
    x=$(popme.pl -h -s defaulttag -d $eingabe)
    gdialog --infobox "Gelöscht: $x" 5 70
    rm eingabe.tmp
    exit 0
    done

    for i in $loeschpur; do
    echo "lösche Mail von puretec"
    gdialog --clear --title Nr-Puretec --inputbox "Nachrichtennummern eingeben" 10 60 2> eingabe.tmp
    #Eingabe einlesen
    eingabe=$(cat eingabe.tmp)
    x=$(popme.pl -h -s puretec -d $eingabe)
    gdialog --infobox "Gelöscht: $x" 5 70
    rm eingabe.tmp
    exit 0
    done
    so, das eigentliche Problem: Ich möchte nach der Ausgabe von 1 bzw 2, das das script zurückspringt ins Hauptmenü. Ich mache damit nun schon den ganzen Tag rum, bekomme es aber nicht hin. Deshalb hier für Euch auch die "reine" Form des Skriptes.

    Bin für jeden Tip dankbar

    timon

  2. #2
    Registrierter Benutzer
    Registriert seit
    13.08.2002
    Beiträge
    23
    Hi timon!

    Du könntest das Programm in eine "while"-Schleife packen.

    Code:
    #! /bin/bash
    
    while [ "$EXITM" != "y" ]
    do
            # dein Code
            echo "Nochmal (y/n) ?"
            read EXITM 
    done
    Gruss

    Jochen

  3. #3
    Registrierter Benutzer
    Registriert seit
    01.10.2002
    Beiträge
    25
    @ lobo

    vielen dank, und ich habe da rumgeschraubt ) funzt, merci vielmals

    timon

Lesezeichen

Berechtigungen

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