Variable überprüfen

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von slaughter.j4ck, 04.09.2007.

  1. #1 slaughter.j4ck, 04.09.2007
    slaughter.j4ck

    slaughter.j4ck Mitglied

    Dabei seit:
    03.08.2007
    Beiträge:
    41
    Zustimmungen:
    0
    Ort:
    In den Weiten des WWW
    Hallo,
    ich möchte in einem Skript prüfen, ob die eingegebene Variable aus Zahlen oder Buchstaben besteht. Gibt es dafür eine Funktion oder einen Befehl?

    Danke für Hilfe!

    mfg
    slaughter.j4ck
     
  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. smg

    smg Regex Fetischist

    Dabei seit:
    20.05.2007
    Beiträge:
    195
    Zustimmungen:
    0
    Ort:
    /home/stephan/
    Definiere genauer bitte:
    Die Variable soll nur aus Ziffern bestehen, oder nur aus Buchstaben, oder soll die Variable sowohl Ziffern als auch Buchstaben enthalten?
     
  4. #3 Fallout, 04.09.2007
    Fallout

    Fallout Doppel-As

    Dabei seit:
    02.03.2007
    Beiträge:
    120
    Zustimmungen:
    0
    Hi,

    reguläre Ausdrücke sind Deine Freunde. Sie beinhalten auch die Möglichkeit von Zeichenklassen:

    Code:
    echo "eins2drei4" | tr -d '[:alpha:]'   # schneidet alle alphabetischen Zeichen raus
    echo "eins2drei4" | tr -d '[:digit:]'   # schneidet alle numerischen Zeichen raus
    Beispiel zum Überprüfen von Eingaben:
    Code:
    if [ ! -z "$(echo $variable|tr -d '[:alpha:]')" ]; then
     echo "variable darf nur aus Buchstaben bestehen!"
    fi
    Du kannst aber auch gezielt auf einzelne Zeichen filtern:

    Code:
    if [ ! -z "$(echo $variable|tr -d 'a-t06-9<>\+\-=')"; then
     echo "variable darf nur aus den Zeichen a-t,0,6-9,<,>,+,-,= bestehen"
    fi

    Gruß Daniel
     
  5. #4 slaughter.j4ck, 04.09.2007
    slaughter.j4ck

    slaughter.j4ck Mitglied

    Dabei seit:
    03.08.2007
    Beiträge:
    41
    Zustimmungen:
    0
    Ort:
    In den Weiten des WWW
    @ smg: Die Variable darf nur aus Ziffern bestehen, anderenfals muss eine Fehlermeldung ausgegeben werden.
     
  6. #5 chibacityblues, 04.09.2007
    chibacityblues

    chibacityblues Leisetreter

    Dabei seit:
    03.09.2007
    Beiträge:
    27
    Zustimmungen:
    0
    Ort:
    Hannover
    Als kleine Funktion:

    Code:
    #!/bin/bash
    
    isNumeric()
    {
      case $1 in
        ''|*[!0-9]*) return 1;;
        *) return 0;;
      esac
    }
    
    isNumeric $1
    
    if [ $? -eq 0 ]
    then
            echo "Nur Ziffern"
    else
            echo "Nicht (nur) Ziffern"
    fi
    
    
     
  7. smg

    smg Regex Fetischist

    Dabei seit:
    20.05.2007
    Beiträge:
    195
    Zustimmungen:
    0
    Ort:
    /home/stephan/
    Code:
    [[ "$var" =~ '^[0-9]*$' ]] || echo "besteht nicht nur aus Ziffern"
    Sollte so gehen mit Bash :)
     
  8. Anzeige

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

Variable überprüfen

Die Seite wird geladen...

Variable überprüfen - Ähnliche Themen

  1. Parameter überprüfen & Variable

    Parameter überprüfen & Variable: Hallo Leute, Ich möchte gerne ein Script erstellen, welches Rechte verändern, Verzeichnisse erstellen und löschen kann! Kann man ja immer...
  2. Variable mittels regex überprüfen

    Variable mittels regex überprüfen: Hi folgendes Problem ich habe eine beliebige Variable $x die ich mittels regex überprüfen möchte, da die bashmuster nicht ausreichen,...
  3. Variablen Überprüfen perl

    Variablen Überprüfen perl: Hallo habe ein langes Perl Skript geschrieben. (Mit vielen Variablendefinitionen) Durch ständige Umschreibungen und so kann es sein, dass einige...
  4. Überprüfen ob ein Wort in einer Variable existiert

    Überprüfen ob ein Wort in einer Variable existiert: Hi, Ich versuche gerade ein Script zu schreiben was eine Datei ausließt und die aktuelle Zeile in $line packt. Dann will ich überprüfen ob in...
  5. Variable über Pipe überprüfen

    Variable über Pipe überprüfen: ---------- grep -A 41870 -e 'store-id="\AM' /file.xml | grep -e \<price-assignment\ product\-id\=\.*02715350000 | cut -f 4 -d '"' ----------...