druckt Ich möchte wissen, ob es einen integrierten BASH-Befehl gibt, der einige Text auf Stderr wie der echo
Befehl druckt, der Text auf stdout druckt. Ich möchte keine temporäre io-Umleitung verwenden. Ich benutze einen eingebauten Befehl, um einen Fehler auf stderr wie (ls: unerkannte Option '--asdf') zu generieren, aber ich möchte etwas sauberer.Bash-Befehl, der eine Nachricht auf stderr
bearbeiten ----
Eigentlich versuche ich stderr/stdout Umleitung zu demonstrieren, und mein Beispiel wie folgt aussieht:
sh test.sh >test-out.txt 2>test-err.txt
Aus Gründen der Klarheit ich die test.sh Datei behalten möchten, wie so einfach und sauber wie möglich, dies vermeidet >
Operator in der Datei.
Sie können hinzufügen: 'if (argc> 1) fprintf (stderr," \ n ");' um eine streunende Newline zu 'stderr' zu verhindern, wenn keine Eingabe erfolgt. –
@DavidC.Rankin: Ich denke, das ist eine gute Idee. Wie es aussieht, gibt es jedoch eine neue Zeile aus, wenn keine Argumente vorhanden sind, genauso wie "echo". –
Ja, das habe ich auch gesehen, aber ich dachte mir, wenn wir etwas Brauchbares machen würden, könnten wir es einen Wurf besser machen lassen :) Ich testete beide Wege, und ich mag es, den Zeilenumbruch bei keiner Eingabe zu unterdrücken. Andere mögen die Leerzeile. –