Ich muss einen Befehl platzieren, der nach allen Dateien im aktuellen Verzeichnis sowie in seinen Unterverzeichnissen - Ende von ~, und/oder alle Dateien suchen wird, die beginnen oder enden #. Die Befehlszeile zeigt alle gefundenen Dateien an und löscht sie. Nur ein Befehl ist erlaubt: Nein ';' oder '& &' oder andere Spielereien.Unix finden Befehl im Terminal funktioniert nicht
hier ist mein Befehl:
find . -name "#*" -o -name "*#" -o -name "*~" -print -delete
aber es löscht nur die Dateien, die auf ~
Apostrophe Versuchen statt doppelte Anführungszeichen für den Namen Platzhalter. Einige Shells werden die Interpolation für Sie mit doppelten Anführungszeichen durchführen, ähnlich wie Perl und PHP mit Strings. – alzee
Ich bin mir ziemlich sicher, dass das nicht das Problem ist. Ich sehe das gleiche Problem hier (mit GNU finden Sie 4.4.2). Ich weiß nicht, was das Problem ist. –
Sie haben vergessen, die Bedingungen in Parens '()' beizufügen. Daher hat nur die letzte Bedingung die '-Print' und' -Delete' ausgelöst. Versuchen Sie 'finden. \ (-name "# *" -o Name "* #" -o Name "* ~" \) -print -delete ". – alvits