En la respuesta a esta pregunta sobre comentarios en shell scripting, se indica que el :
es un comando nulo que explícitamente no hace nada (pero no debe usarse para comentarios).
¿Cuál sería la utilidad de un comando que no hace absolutamente nada?
Respuesta aceptada:
Normalmente uso true
en bucles; Creo que es más claro:
while true; do
...
done
El único lugar donde encontré que :
es realmente útil en declaraciones de casos, si necesita hacer coincidir algo pero no quiere hacer nada en realidad. Por ejemplo:
case $answer in
([Yy]*) : ok ;;
(*) echo "stop."; exit 1 ;;
esac