Mögliches Duplikat:
Wie verschiebt man 100 Dateien aus einem Ordner mit Tausenden?
Ist es möglich, nur die ersten 1000 Dateien von einem Verzeichnis in ein anderes zu kopieren?
Vielen Dank im Voraus
Akzeptierte Antwort:
Im Folgenden werden die ersten 1000 Dateien, die im aktuellen Verzeichnis gefunden werden, nach $destdir kopiert . Die tatsächlichen Dateien hängen jedoch von der Ausgabe ab, die von find zurückgegeben wird .
$ find . -maxdepth 1 -type f |head -1000|xargs cp -t "$destdir"
Sie benötigen die GNU-Implementierung von cp für -t , ein GNU-kompatibles find für -maxdepth . Beachten Sie auch, dass davon ausgegangen wird, dass Dateipfade keine Leerzeichen, Zeilenumbrüche, Anführungszeichen oder Backslashes (oder ungültige Zeichen oder bei einigen xargs länger als 255 Byte enthalten Implementierungen).
BEARBEITEN: Um Dateinamen mit Leerzeichen, Zeilenumbrüchen, Anführungszeichen usw. zu handhaben, möchten Sie möglicherweise auf Null endende Zeilen verwenden (vorausgesetzt, eine Version von head das hat den -z Option):
find . -maxdepth 1 -type f -print0 | head -z -n 1000 | xargs -0 -r -- cp -t "$destdir" --