Existe-t-il un moyen de transférer plus rapidement des milliers de petits fichiers sous Windows 7?

30

J'ai remarqué que si je transfère quelques gros fichiers entre deux disques durs, c'est assez rapide, à environ au moins 30 Mo par seconde, mais si je transfère des milliers de fichiers de moins de 5 Ko, c'est sacrément trop lent .. environ 1 à 2 Mo par seconde.

Existe-t-il un moyen d'accélérer le processus de copier / coller avec des milliers de petits fichiers sur Windows 7?

netrox
la source

Réponses:

19

Vous voudrez peut-être jeter un œil à TeraCopy qui est un programme conçu pour copier et déplacer des fichiers à la vitesse maximale possible en ajustant dynamiquement les tampons pour réduire les temps de recherche. TeraCopy peut également effectuer une copie asynchrone qui accélère le transfert de fichiers entre deux disques durs physiques.

J'ai personnellement utilisé cette application et j'ai constaté qu'elle accélère les transferts de fichiers, ce qui prend généralement un certain temps.

J'espère que cela aide certains.

Chris
la source
1
@netrox: Teracopy fortement, fortement recommandé. +1
studiohack
2
TeraCopy s'est écrasé pour moi, donc je ne le recommanderais pas car il y a un risque de perte de données.
Simon Morgan
3
J'ai eu le problème opposé - la copie de minuscules fichiers de 1 m a provoqué un plantage de l'explorateur, mais TeraCopy a bien fonctionné!
RobinL
9

ZIP les fichiers puis transférer le plus gros fichier ZIP? Je ne sais pas combien de temps il faudrait pour ZIP (et si le temps total est plus rapide).

Kevin Yap
la source
8
Vous devez toujours lire tous les fichiers du côté source et les écrire tous du côté cible. Ce ne sera pas plus rapide. Vous perdrez juste du temps pour les zipper.
Joey
2
En fait, cela fonctionne pour moi dans ma situation car je voulais vraiment sauvegarder des fichiers ... Je me fiche de décompresser. Compresser des milliers de fichiers a bien fonctionné ... un fichier compressé était beaucoup plus rapide que la copie habituelle. Mais oui, j'ai essayé de décompresser et ça prend du temps. Merci pour la suggestion.
netrox
1
Aucun problème; heureux d'avoir aidé. :)
Kevin Yap
2
Cela fonctionne extrêmement bien. J'ai pu obtenir le temps de transfert de 200 Mo de fichiers de 30 secondes en utilisant une copie simple à 2 secondes (pas de compression, lecteur différent). La raison pour laquelle cela fonctionne est qu'il y a beaucoup de frais généraux associés à la création et à la fermeture d'un nouveau fichier. Avec une archive, elle possède un seul descripteur de fichier (l'archive) auquel vous ajoutez des données. Si vous vous déplacez vers un autre disque dur, créez l'archive sur la destination, ne la créez pas puis déplacez-la.
Despertar
Un autre cas d'utilisation où cela peut aider à accélérer les choses est lors du transfert vers / depuis des lecteurs flash portables ou d'autres supports et interfaces plus lents. Compresser / décompresser des milliers de petits fichiers sur un SSD avec une connexion SATA III est beaucoup plus rapide que de transférer des milliers de fichiers vers / depuis une clé USB portable sur USB. Le nettoyage est également beaucoup plus simple, car la suppression d'un seul fichier zip sur la clé USB prend moins d'une seconde contre plusieurs minutes pour supprimer un dossier contenant des milliers de petits fichiers.
positlux
6

La solution consiste à archiver avec WinRAR, mais, lorsqu'on lui demande comment archiver, choisissez store. Cela signifie qu'il n'y aura pas de compression. Ainsi, dans environ une minute, vous vous retrouverez avec un gros fichier à copier, qui se copiera très rapidement.

J'ai essayé de copier 19890 petits fichiers (5K environ chacun) et Windows m'a dit que cela prendrait 3 heures, TeraCopy a dit 3,2 heures, mais avec ma méthode, cela n'a pris que 1,5 minute.

Ion Apostol
la source
0

Il est possible qu'une partie de ce qui vous ralentit pour de nombreux petits fichiers soit s'ils ne se trouvent pas dans la même zone physique du disque. Sur un lecteur qui n'est pas très fragmenté, un seul gros fichier sera généralement lu à partir d'un seul endroit, mais si vous devez lire un tas de fichiers séparés, ils peuvent être dispersés sur le disque.

Le ZIP a été la première idée qui m'est venue à l'esprit également, mais comme indiqué ci-dessus, vous perdriez du temps de toute façon. J'ai remarqué qu'en général, la copie avec RoboCopy.exe va plus vite que le faire via l'interface graphique. Vous voudrez peut-être jouer avec cela et voir comment cela fonctionne pour vous.

nhinkle
la source
1
Vous perdrez la plupart du temps en raison de la commutation fréquente entre le contenu du fichier et les entrées MFT. L'endroit où se trouvent les fichiers individuels sur le disque est presque hors de propos ici.
Joey
0

Il peut être utile d'essayer une défragmentation rapide avant de compresser quoi que ce soit, mais ce n'est vraiment que si vous déplacez beaucoup de petits fichiers, très souvent. Sinon, je suggère de le compresser (avec 7zip ou quelque chose - qui compressera souvent mieux que la compression standard de Windows), puis de le copier.

Et cela dépend aussi des disques durs. S'agit-il d'un disque dur externe USB ou 2 qui sont dans le même système? S'il s'agit d'un ancien disque dur externe, il peut utiliser USB1.0 ou il vaut mieux en avoir un avec une alimentation.

lavamunky
la source
0

ZIP a une limite de fichier de 4 Go (ou quelque chose comme ça) - J'utilise habituellement l'archiveur RAR (il n'a pas cette limite de taille de fichier) et spécifie de ne pas compresser du tout - de cette façon, l'archivage dans un seul fichier se produit très rapidement, et alors je copie simplement ce gros fichier.

Andrey
la source
-1

Si c'est un système basé sur Unix, vous pouvez utiliser tar sur ssh.
-La commande suivante compresse tous les fichiers et dossiers.

tar -cf - / accueil | ssh [email protected] tar -xvf - -C /

-Transférez-le et décompressez-le sur le deuxième ordinateur.
C'est beaucoup plus rapide que de copier uniquement par scp

Lisez d'abord la page de manuel et SOYEZ PRUDENT

user466567
la source
1
La question contient la balise "windows", donc votre réponse ne s'applique pas.
Nasreddine
2
effectivement. la prochaine fois, lisez les balises, hein?
td512
Sans oublier de lire l'âge de la question
qasdfdsaq