ubuntuusers.de

bash if abfrage

Status: Ungelöst | Ubuntu-Version: Ubuntu 9.10 (Karmic Koala)
Antworten |

Christophm

Anmeldungsdatum:
2. Dezember 2007

Beiträge: 39

Hallo, ich habe ein bash script:

ich übergebe dem script parameter bzw. ein Datum mit dem prefix d

"d15102010"

ich möchte jetzt prüfen, ob dieser parameter a) ein prefix hat b) acht-stellig ist

var1="d15102010" if [[ $var1 == [d][0-9]\{8\} ]] ; then echo ja ; fi

leider scheitere ich vermutlich am escapen?!?

besten dank!

Vain

Avatar von Vain

Anmeldungsdatum:
12. April 2008

Beiträge: 2505

Bei einem einfachen == wird mittels Pattern Matching ausgewertet und das kann keine Quantifier. Du kannst aber =~ verwenden, dann geht das:

1
2
3
4
$ echo $foo
d15102010
$ [[ $foo =~ ^[d][0-9]{8}$ ]] && echo "jo" || echo "ne"
jo
Antworten |