[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Nuova curiosita` su verifica input in script [con extglob]




# Si verifica se si e` scelto un campo o un numero di campi:
case "$_mkey" in
	## !([0-9]) )  # se input=2 ok, se 23 si comporta come una lettera!



$ case 2 in !([0-9]) ) echo OK;; *) echo NO;; esac
NO

$ case 23 in !([0-9]) ) echo OK;; *) echo NO;; esac
OK


e' un comportamento coerente
il test verifica che l'input non sia un numero compreso tra 0 e 9
2 e' un numero compreso tra 0 e 9, quindi giustamente non passa il test
23 invece non e' UN numero compreso tra 0' e 9 (infatti sono due) e quindi passa il test

la controprova potrebbe essere questa

$ case 23 in !([0-9][0-9]) ) echo OK;; *) echo NO;; esac
NO


Reply to: