Portál AbcLinuxu, 13. května 2025 22:39
if [ $a = 0 -o $a = 1 -o $a = 2 -o $a = 4 -o $a = 5 -o $a = 3 ] ; then atd.
case "$k" in [Oo][Gg][Gg] | [Ww][Mm][Aa] | [Mm][Pp]3 | [Ww][Aa][Vv]) atd.
Děkuji.
[ -n "`echo $a | grep [02357]`" ]
respektive testovat přímo -- grep
vrací 0 (úspěch), pokud text neprofiltruje (ale je asi žádoucí ten neprofiltrovaný text nevypsat):
if echo $a | grep [02357] > /dev/null; then echo OK.; fi
if echo $a | grep -q [02357]; then echo OK.; fi
$ if echo '12345' | grep -q [02357]; then echo OK.; fi OK.Spíš bych dal:
if echo $a | egrep -q '^[02357]$'; then echo OK.; fi
a in [0,2,3,5,7] a.lower() in ['ogg', 'wma', 'mp3', 'wav']
case "`echo $k | tr [:upper:] [:lower:]`" in ogg) echo Je to OGG Vorbis. ;; mp3) echo Je to empetrojka. ;; wav) echo Je to vlna. ;; esac
[[ "$a" -ge 0 && "$a" -le 5 ]] && case ...pokial by slo o "nespojitu" mnozinu, tak bash ma testovanie aj na regexpy
[[ "$a" =~ "[13589]" ]] && case ...
bash ma testovanie aj na regexpyJak neskonale božské, Legione. Jak je vůbec možný, že jsem něco tak úžasnýho neznal?[[ "$a" =~ "[13589]" ]] && case ...
man bash
opravdu ne grep -iqE "(ogg|wma|mp3|wav)" <<<"$k" && echo hura
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.