Die Shell druckt diese Nachricht und nicht das abstürzende Programm. Um auch die Ausgabe der Shell zu erfassen, möchten Sie:
{ ./test } > log 2 >&1
Die geschweiften Klammern bewirken, dass eine Sub-Shell ausgeführt wird, um die darin enthaltenen Befehle auszuführen, und die Ausgabe der gesamten Sub-Shell wird anstelle eines einzigen Befehls umgeleitet.
Wenn Sie die gesamte Ausgabe für den Rest des Skripts umleiten möchten, können Sie alternativ Folgendes verwenden:
exec > log 2>&1