Todas las shells que son compatibles con POSIX soportan tanto los "backticks" (`) como $().
Solamente la Bourne Shell (sh, no bash) no es compatible con $()
"Compatibilidad con versiones anteriores de bash", pues no, en cualquier caso compatibilidad con otras shells, que aquí hablamos de todos los UNIX y no solamente de Linux, y en Solaris la shell predeterminada es sh ;)
Los elementos de la lista que se le envía a for se separan por lo que esté en la variable IFS (Input Field Separator), que por lo general es espacios. ¡Eso hace que para archivos a veces hay que tener cuidado si hay espacios en sus nombres!
Ejemplo:
Código SH:
Ver originalfor letra in a b c d e f; do
echo $letra
done
Si no tuvieses el requisito de ordenar por tiempo, esto bastaría:
Código SH:
Ver originalfor archivo in *; do
echo read more $archivo;
done
Saludos.