Ich denke das ist ein Berechtigungsproblem.
Du gibst immer die selbe Ausgabedatei an so dass diese ggf. nicht ersetzt oder überschrieben werden kann.
Wenn du fertig bist und die Ausgabe nicht benötigst, füge deinem Script einfach einen ";rm /qshlog.txt" hinzu.

Der ganz elegante Weg ist das nicht wenn du eine Datei im Root erstellst.

In der QSH kannst du ja auch einfach eine Ausgabeumleitung machen:

QSH CMD('... bla bla ... > qshlog.txt 2> qsherr.txt ; rm qshlog.txt qsherr.txt')

Die Dateien werden im aktuellen Verzeichnis (siehe USRPRF) abgelegt.