Wie breche ich einen RM-Befehl ab?

Wie breche ich einen RM-Befehl ab?

Es gibt viele Fragen darüber, wie maneine abgeschlossene rmBefehl. In meinem Fall begann mein rm zu fragen: „Möchten Sie diese Datei wirklich löschen?“

Und ich muss für jeden davon eine Bestätigung vornehmen. Anstatt manuell „j/n“ zu bestätigen:

  1. Kann ich für den Rest „ja“ einstellen, während ich für die n-te Datei nach „j/n“ gefragt werde? (entspricht dem Kontrollkästchen „Ja für alle“ unter Windows) (Ich kenne den yes | rmTrick, bevor ich anfange)

  2. Kann ich den Vorgang abbrechen, während ich nach j/n für die n-te Datei gefragt werde? (außer beim Herunterfahren der Maschine :))

Antwort1

Um Anfrage 1 zu erfüllen, müssen Sie ein komplexeres Programm verwenden, als N-mal yeszu senden und dann darüber hinaus die Tastatureingaben durchzureichen. Sie können dies nicht mit „except to always ask“ ( ) oder „never ask“ ( ) tun.yrmrm -irm -f

Sie können jederzeit abbrechen, rmindem Sie

  • durch Drücken von Strg-C wird es unterbrochen (sendet SIGINT),
  • Drücken Sie Strg-Z, um es zu stoppen (sendet SIGSTOP) und beenden Sie es dann.
  • Senden eines SIGTERM ( kill), oder
  • Senden Sie ihm ein SIGKILL ( kill -9).

Dadurch werden keine bereits ausgeführten Dateivorgänge rückgängig gemacht rm, aber es werden keine weiteren Dateivorgänge mehr ausgeführt. Wenn der rmProzess derzeit nach Benutzereingaben fragt, werden keine Dateien aktiv getrennt. Wenn Sie ihn also beenden, wird nur verhindert, dass er fortgesetzt wird.

Antwort2

GNU rm unterstützt -i, was Sie vermutlich meinen und für jede Datei eine Bestätigung anfordert, aber auch -I, was ein wenig anders ist:

-I     prompt once before removing  more  than  three  files,  or  when
       removing  recursively.  Less intrusive than -i, while still giv‐
       ing protection against most mistakes

Zur Frage, ob eine Interaktion mit rm nach dem Start gestoppt werden kann, sollte das Drücken von Ctrl- Cgenügen.

Antwort3

mit Ctrl+ ckönnen Sie den Vorgang abbrechen.

Wenn Sie jedoch in Ihre .bashrcDatei schauen, können Sie den Alias ​​kommentieren, der die Bestätigung erzwingt. Er verwendet den -iParameter wie in dhag erläutert.

in dir .bashrcfindest du einen Eintrag wie diesen:

alias rm='rm -i'

Wenn du es kommentierst, rm -ffunktioniert dein Wille direkt

Antwort4

Unter bashkönnen Sie einen Alias ​​umgehen, indem Sie \dem Befehl ein voranstellen.

rm filename

wird

\rm filename

verwandte Informationen