In Bash werde ich gelegentlich eine Liste von Befehlen eingeben und drücken Enterund erst später feststellen, dass am Ende der Liste ein Fehler mit einem Befehl vorliegt. Ich weiß, dass wenn ich Ctrl+ drücke C, der aktuell ausgeführte Befehl beendet und der Rest der Liste abgebrochen wird. Gibt es eine Möglichkeit, den Rest der Liste abzubrechen, ohne den aktuell ausgeführten Befehl zu beenden?
Nehmen wir zum Beispiel an, ich habe so etwas eingegeben
foo; bar
oder
foo && bar
Wo fooist ein lang laufender Befehl, dass es sehr wichtig ist, nicht zu unterbrechen, und baretwas irreversibles und unerwünschtes tut (sagen wir shutdown -h nowoder rm -rf /). Gibt fooes eine allgemeine Möglichkeit, der Shell zu sagen, dass sie foofertig sein soll, aber nicht bardanach laufen soll, während sie noch läuft ? (Ja, ich könnte die Berechtigungen barso ändern , dass sie nicht ausführbar sind, aber das ist nicht besonders praktisch, wenn ich so baretwas rmin der Zwischenzeit verwenden möchte, und es funktioniert auch nicht, wenn ich es nicht besitze baroder wenn bares integriert ist.)
barBefehl insome_command: ändern ,^bar^some_commandbevor er ausgeführt wird.