Das ist zwar schön und spart satte 4 Byte, aber die erste Variante ist auf jeden Fall besser zu lesen, da ich erst ganz am Ende es Konstruktes erfahre, wo die Daten herkommen, die read einliest.
Gut zu lesen ist keine der genannten Varianten. Gut zu lesen ist vielleicht folgendes:
# kurzer Kommentar wie: gibt alle Zeilen von standard input aus: print_all_lines () { while read line; do echo another student: $line done }
...
print_all_lines < student.csv
Oder so etwas in der Art.
Viele Gruesse, Torsten