Starten Sie den Prozess im Hintergrund mit einer Tastenkombination (fügen Sie „& disown“ an Strg+Eingabe an).

Starten Sie den Prozess im Hintergrund mit einer Tastenkombination (fügen Sie „& disown“ an Strg+Eingabe an).

Nehmen wir an, ich möchte Chrome, Sublime Idea usw. über die Befehlszeile öffnen und dabei die Kontrolle über das Terminal behalten.

& disownGibt es eine Möglichkeit , dem Befehl in Bash etwas anzuhängen, wenn Sie Ctrl+ Enteroder eine andere praktische Kombination drücken?

Ich habe versucht, Aliase für sie zu erstellen, z. B. alias subl='subl & disown', aber die Übergabe von Argumenten funktioniert nicht mehr und es ist zu umständlich, Aliase für alle Programme schreiben zu müssen, die ich auf diese Weise verwenden möchte. Es muss einen intelligenteren Weg geben.

Antwort1

Aus Ihrem Kommentar:

Ich habe es hinzugefügt "\C-e": ' & disown\n'und .inputrces macht, was ich will, mit Ctrl+ e. Aus irgendeinem Grund funktioniert es nicht mit \nanstelle von e.

Ich glaube nicht, \ndass dies die richtige Zeichenfolge ist, aber es gibt ein größeres Problem: In einer Konsole Enterselbst ist es \C-Mie Ctrl+ M, also ist Ctrl+ Entereinfach Enterund Sie können die beiden nicht unterscheiden.

Sie können jedoch zwischen Enterund Meta (aka Alt)+ unterscheiden Enter. Fügen Sie diese Zeile in Ihre ein .inputrc:

"\C-\M-M":' & disown\n'

und drücken Sie Meta (aka Alt)+ Enter, wann immer Sie es verwenden möchten.

Antwort2

Ich habe gelernt, dass\Rteilt den gleichen ASCII-Code wie Ctrl+ M, was bedeutet, dass Ctrl+ Entergleichbedeutend ist mit Ctrl+ Ctrl+ M. Zweimaliges Drücken Ctrlergibt keinen Sinn, daher können Ctrlund Enternicht zusammen im Terminal ohne xterm verwendet werden.Übersetzung.

CtrlMir ist der Trick mit + gelungen, Eindem ich "\C-E": ' & disown\n 'hinzugefügt habe .inputrc.

verwandte Informationen