Wie wähle ich 3.000 von 10.000 Dateien im Dateimanager aus?

7

Ich möchte die ersten 3.000 Dateien in einem Ordner auswählen, der 10.000 Dateien enthält. Wie wähle ich nur die ersten 3.000 aus? Und wenn möglich, wie kann ich anschließend die nächsten 3.000 und danach 3.000 auswählen?

Ich muss sie in separate Ordner mit jeweils 3.000 Dateien kopieren.

Jindan
quelle
Wählen Sie wie in Hervorheben mit der Maus oder einem Befehl?
Liso
@ Emmet entweder. Ich muss sie in separate Ordner kopieren.
Jindan
2
Aufgaben wie diese sind genau der Grund, warum es immer noch nützlich ist, eine CLI zu haben und zu kennen, selbst im Zeitalter der ausgefallenen Grafik.
Chrylis -on Streik-

Antworten:

11

Es gibt keine einfache Methode, dies von einem Stock File Manager aus zu tun. Sie können dies mit Shift+ Arrow Up(oder Arrow Down) tun, müssen jedoch die Anzahl der Dateien selbst auswählen.

Befehlszeile :

Dadurch werden ( cp) 3000 Dateien ( -n 3000) nach / opt / ( -t "$directory") kopiert :

cd /dir/with/files/
find . -maxdepth 1 -type f -print0 | head -z -n 3000 | xargs -0 -r -- cp -t "/opt/" --
  • Ändern Sie bei Bedarf 3000 in eine andere Nummer
  • Ändern Sie / opt / zu Ihrer Bestimmung.
  • Verwenden Sie diese Option mv -tf, um zu verschieben, anstatt zu cp -twissen cp, was Sie möchten (dies mvwird zum Löschen der 3000 Dateien benötigt).
Rinzwind
quelle
mv: target './10000000.jpg' is not a directory Dieser Fehler wird angezeigt, wenn ich den mvBefehl verwende. Es funktioniert jedoch einwandfrei, wenn ich den cpBefehl verwende. Gibt es auch eine Möglichkeit, die ersten 3.000 Dateien auf dieselbe Weise zu löschen?
Jindan
Bearbeiten - Es hat nur funktioniert, indem das Flag für den Befehl von -fauf geändert wurde. -tmv
Jindan
dann tf. f zum Überschreiben erzwingen;) Und das cp dient nur zum Testen der 1. Gruppe. mv lösche die 3000 dateien.
Rinzwind
Sie können das --Argument für das Ende der Optionen wahrscheinlich weglassen , da find . es ./jedem Dateinamen vorangestellt wird. Sie können auch in Betracht ziehen, printf './%s\0' *anstelle des find -maxdepth 1Befehls
steeldriver