Wenn ich laufe nohup some_command &
, geht die Ausgabe zu nohup.out
; man nohup
sagt zu schauen, info nohup
was wiederum sagt:
Wenn die Standardausgabe ein Terminal ist, wird die Standardausgabe des Befehls an die Datei 'nohup.out' angehängt. Wenn dies nicht beschrieben werden kann, wird es an die Datei '$ HOME / nohup.out' angehängt. und wenn das nicht geschrieben werden kann, wird der Befehl nicht ausgeführt.
Aber wenn ich bereits einen Befehl nohup
mit Ausgabe verwende /nohup.out
und einen anderen nohup
Befehl ausführen möchte , kann ich die Ausgabe umleiten nohup2.out
?
2>&1&
dann?2>&1
leitetstderr
zu derselben Ausgabedatei weiter wiestdout
in diesem Fallnohup2.out
&> nohup2.out
.Aus irgendeinem Grund hat die obige Antwort bei mir nicht funktioniert. Ich bin nach dem Ausführen nicht wie erwartet mit dem nachfolgenden & zur Eingabeaufforderung zurückgekehrt. Stattdessen habe ich es einfach mit versucht
und es funktioniert so wie ich es will. Lassen Sie dies hier, falls sich jemand anderes in der gleichen Situation befindet. Ausführen von Bash 4.3.8 als Referenz.
quelle
Da die Dateihandler auf i-Knoten (die unabhängig von Dateinamen gespeichert sind) auf Linux / Unix-Systemen verweisen, können Sie den Standard
nohup.out
jederzeit nach dem Start in einen anderen Dateinamen umbenennennohup something&
. So könnte man auch folgendes machen:Nun
something
fügt Liniennohup2.out
undsomething2
zunohup.out
.quelle
Die oben genannten Methoden entfernen Ihre Ausgabedateidaten, wenn Sie den obigen Befehl nohup ausführen.
Um Anfügen Ausgabe in benutzerdefinierter Datei können Sie verwenden
>>
in nohup Befehl.Dieser Befehl hängt alle Ausgaben in Ihrer Datei an, ohne alte Daten zu entfernen.
quelle