Starten Sie einen neuen Prozess, ohne das Terminal zu blockieren

47

Ist das möglich? Wenn " gedit tifatul.txt" ich beispielsweise über die Befehlszeile starte, wird mein Terminal blockiert und ich kann keinen anderen Befehl in dieses Terminal eingeben, bevor ich gedit beende. Kann ich ein Programm (wie gedit) starten, ohne das Terminal zu blockieren? In Windows denke ich, dass dies wie " start notepad tifatul.txt" gemacht werden kann.

TifatulS
quelle
Was meinst du mit gesperrt?
@PedroDiniz bedeutet, dass ich keinen weiteren Befehl in das Terminal eingeben kann, während gedit ausgeführt wird. Wenn Sie Windows haben, versuchen Sie den Unterschied zwischen Laufen notepad(blockiert) und start notepad(nicht blockiert)
TifatulS

Antworten:

68

Fügen Sie einfach &am Ende des Befehls hinzu. Dadurch wird der neue Prozess im Hintergrund ausgeführt und Sie können Ihr Terminal weiter verwenden. Zum Beispiel:gedit new_file.txt &

Daniel Yuste Aroca
quelle
Kennen Sie übrigens Unterlagen zu diesem Verhalten? Ist es nur für gedit?
TifatulS
1
Diese Funktion des Hintergrundprozesses wird von der Shell bereitgestellt, daher funktioniert sie nicht nur für gedit, sondern für alle Befehle, die Sie auf der Shell ausführen.
Daniel Yuste Aroca
Ja, danke für die Antwort. Ich wollte akzeptieren, aber das System erfordert, dass ich noch ein paar Minuten
warte
Akzeptiert und positiv bewertet :) Übrigens, wie heißt dieses Feature?
TifatulS
Diese Funktion wird als Ausführen von Prozessen im Hintergrund oder Ausführen von Hintergrundprozessen bezeichnet.
Daniel Yuste Aroca
21

Ich möchte Sie weiterempfehlen nohup gedit filename &. gedit filename &Sie tragen einfach das Risiko, das Terminal versehentlich zu schließen und Ihre Bearbeitung zu verlieren. Wenn Sie nicht nohup.outjedes Mal erstellt werden möchten, leiten Sie einfach die Ausgabe um:

nohup gedit filename > /dev/null &
gefrorene Flamme
quelle