¿Qué significa el asterisco (*) en el bucle for de Linux?

¿Qué significa el asterisco (*) en el bucle for de Linux?

Tengo este fragmento de script .ksh:

for type in *
do 
    cd ${DATA_HOME}/$type
    for mid in *
        do
            #doing something here
        done
done

Mi pregunta: Entonces, ¿qué significa particularmente el asterisco *cuando se usa en un bucle for como el anterior?

Respuesta1

"*" significa todos los archivos en el directorio actual. Es equivalente (al menos en bash; espero que ksh sea similar) a una lista separada por espacios de nombres de archivos/directorios entrecomillados.

Siempre puedes comprobar este tipo de cosas por ti mismo escribiendo

echo *

Es probable que el script anterior haya emitido archivos/directorios de manejo con un espacio en ellos.

información relacionada