wie man einen Befehl ohne Erlaubnis verbietet

wie man einen Befehl ohne Erlaubnis verbietet

Ich wollte alle Backup-Dateien in einem Verzeichnis löschen, also wollte ich rm *~im Terminal tippen. Leider traf ich dieEingebenvor dem Schlagen derTildeund es sind unglückliche Dinge passiert. Obwohl ich alle gelöschten Dateien wiederhergestellt habe, möchte ich wirklich nicht, dass das noch einmal passiert. Könnte ich die Ausführung eines solchen Befehls verbieten, ohne eine entsprechende Berechtigung zu erhalten, etwa die eines Superusers?

Antwort1

Ich bin kein Fan davon, eingebaute Befehle zu überschreiben, aber inmeine .bashrc(Teil vonTilde, meine „Punktdateien“) mache ich explizit Folgendes:

alias rm='rm -i';

Dies sorgt dafür, rmdass vor dem Löschen um Erlaubnis gefragt wird. Das hat mich schon ein paar Mal gerettet. Sie können es jederzeit mit überschreiben rm -f.

Antwort2

In Bash escape ich den rmBefehl einfach, um die -iOption zu überschreiben. So: \rm file*

Ich liebe diese -iOption. Auch sie hat mich vor mir selbst gerettet.

Antwort3

Nachdem Sie sich ein- oder zweimal in den Fuß geschossen haben, lernen Sie, den Finger vom Abzug zu nehmen, bis Sie sicher sind, dass Sie richtig gezielt haben.

Mit anderen Worten: Lernen Sie, immer dann eine Pause zu machen und zu überprüfen, ob Sie es richtig gemacht haben, wenn Sie rmmit Platzhaltern beginnen.

verwandte Informationen