suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Bitte sagen Sie mir, wie ich mit dem Befehl „find“ unter Linux nach regulären Ausdrücken filtern kann.

Ich möchte Dateien im aktuellen Verzeichnis finden, die dem Format: integer_integer.zip entsprechen, suchen und löschen.
Zum Beispiel ein Dateiname wie dieser: 234_23444.zip

Wie schreibe ich den Befehl? Danke, Daniel!

仅有的幸福仅有的幸福2840 Tage vor961

Antworte allen(1)Ich werde antworten

  • 迷茫

    迷茫2017-06-17 09:18:46

    可以利用选项-regex来使用正则:

    find . -regex '\./[0-9]+_[0-9]+\.zip'

    如果需要将找到的文件删除则利用xargs(注意确定之后再删除):

    find . -regex '\./[0-9]+_[0-9]+\.zip'|xargs rm -f

    如果不仅要删除还要得到删除的数量,可以这样:

    find . -regex '\./[0-9]+_[0-9]+\.zip'|tee >(wc -l 1>&2)|xargs rm -f

    Antwort
    0
  • StornierenAntwort