it-swarm.com.de

Wie lösche ich einen Ordner mit einem ungewöhnlichen Namen?

Ich weiß nicht, wie ich das gemacht habe, aber irgendwie habe ich einen Ordner mit dem Namen "-p" erstellt. Jetzt versuche ich es zu löschen, aber mein Buntu denkt, ich übergebe -p als Paremeter.

Was kann ich machen?

Ubuntu Server 15.

8
Magno C

Sie können -- verwenden, um rm (und viele andere Befehle, einschließlich vieler eingebauter Shell-Befehle) anzuweisen, keine weiteren Eingaben als Befehlsparameter zu interpretieren, sodass -p korrekt als interpretiert werden kann Argument anstelle einer "nicht erkannten Option"

rm -- -p

(Dies ist auch eine gute Sicherheitsmaßnahme beim Globbing. Möglicherweise haben Sie versehentlich eine Datei mit dem Namen -rf... erstellt.)

12
Zanna

der richtige Weg in diesem Fall ist:

rm ./-p

-- funktioniert möglicherweise mit einigen Befehlen und schlägt mit anderen fehl. Es ist keine Bash, die es interpretiert, aber jeder Befehl ist separat (und einige erkennen möglicherweise -- nicht als das Ende von Optionen) (besonders wenn Sie jemals Nicht-Gnu-Befehle verwenden ... zum Beispiel, wenn Sie an einem anderen arbeiten Betriebssysteme).

Die Angewohnheit, ./somefileorglob anstelle von somefileorglob zu sagen, ist im Allgemeinen eine gute Angewohnheit.

6
Olivier Dulac