Was ist los mit diesem Befehl 'find'?


14

Ich führe den folgenden Befehl aus (um alle Dateien mit der .tsErweiterung zu finden und zu löschen):

find . -type f -name "*.ts" –delete

Ein Fehler wird angezeigt:

find: paths must precede expression: `–delete'

Was habe ich falsch gemacht?

Antworten:


35

Sie haben ein typografisches Vorzeichen anstelle des Minuszeichens ( -).

Ändern Sie Ihren Befehl in

find . -type f -name "*.ts" -delete

Vollständige Syntax siehe man find:

AKTIONEN
       -delete

        Dateien löschen; true, wenn das Entfernen erfolgreich war. Wenn das Entfernen fehlgeschlagen ist, wird eine Fehlermeldung ausgegeben.
        Wenn dies -delete fehlschlägt, findist der Beendigungsstatus ungleich Null (wenn er schließlich beendet wird).
        Die Verwendung von -deleteschaltet die -depthOption automatisch ein .


Seien Sie vorsichtig beim Kopieren und Einfügen von Befehlen aus Blogs und Rich-Text-Prozessoren. Sie können einige typografische Symbole in ihre Klartext-Entsprechungen umwandeln und umgekehrt.

Ziehen Sie in Betracht, beim nächsten Mal einfache Texteditoren für die Notizen zu verwenden - verwenden Sie Nur-Text, Markdown oder reStructuredText.

Und wie @AuxTaco bereits erwähnte, sind einige Blogs möglicherweise darauf angewiesen, dass Sie kopieren, um Ihren Computer anzugreifen .



In diesem speziellen Fall kennen wir die Quelle dieses Befehls nicht. Wenn der ursprüngliche Autor falsch war, --hat die Engine es in konvertiert . Wir kennen also nicht die ganze Geschichte :)
N0rbert

2
Ich kann die Geschichte erzählen: Ich habe sie vom Terminal in ein MS Word-Dokument kopiert, das aus einem Befehlssatz zum Bereitstellen unseres Servers bestand. MS Word repariert den Gedankenstrich in einigen Fällen automatisch. Dann ein Jahr oder ein paar, nachdem ich diesen Befehl kopiert und die Frage geöffnet hatte ... Danke.
Dorad

1
In dieser Situation ist es wahrscheinlich besser, Notepad ++ zu verwenden, als Word.
Davidw

1
Verwenden Sie niemals ein Textverarbeitungsprogramm, um Code zu bearbeiten. Das ist (ein großer Grund), warum es immer noch Texteditoren gibt. Das Letzte, was Sie brauchen, sind ersetzte Zeichen oder Zeilenumbrüche.
Joe
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.