Devo verificare la lunghezza della variabile letta (il mio script ha un limite di cinque caratteri inseriti), penso a qualcosa del genere:
#!/bin/bash
read string
check=${#string}
echo $check
if [ $check -ge 5 ]; then echo "error" ; exit
else echo "done"
fi
esiste una soluzione più "elegante"?
dash
's ${#string}
darebbe la lunghezza in numero di byte invece di caratteri.
/bin/sh
. Dovresti considerare di cambiare la linea shebang in#!/bin/sh
modo che sia più portatile e funzionante in ambienti in cui bash non è disponibile. Inoltre,/bin/sh
potrebbe essere una shell più leggera come il trattino che non è gravata da funzionalità pensate per l'uso interattivo.