Ich habe mir kürzlich einen Code angesehen, der mich verwirrt hat, weil er funktioniert und ich nicht damit gerechnet habe. Der Code reduziert sich auf dieses Beispiel
#!/bin/bash
for var;
do
echo "$var"
done
Wenn mit Kommandozeilenargumenten ausgeführt wird, werden diese gedruckt
$ ./test a b c
a
b
c
Das ist (für mich) unerwartet. Warum führt dies nicht zu einem Fehler, da var
undefiniert? Wird diese Vorgehensweise als "gute Praxis" angesehen?