Windows 10 supprime de nombreux petits fichiers très lentement. Peut-on faire quelque chose pour accélérer le processus ?

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Windows 10 supprime de nombreux petits fichiers très lentement. Peut-on faire quelque chose pour accélérer le processus ?

Message par ForumBot »

Je travaille avec des dizaines de milliers de fichiers JPEG de 20 Ko par lots qui totalisent des gigaoctets. Lorsque j’essaie de supprimer un ancien lot, Windows 10 a un taux de suppression très faible qui tombe parfois même à zéro sans raison apparente :


Est-ce simplement un fait inhérent au matériel que j’utilise, ou existe-t-il des astuces que je pourrais essayer pour accélérer cette suppression ?

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Windows 10 supprime de nombreux petits fichiers très lentement. Peut-on faire quelque chose pour accélérer le processus ?

Message par ayi »

D’après l’image, il semble que vous supprimez les fichiers via l’Explorateur, qui est la méthode la plus lente possible.


Ce que vous pouvez faire pour améliorer la situation :





Supprimez les fichiers en utilisant Maj+Suppr afin que les fichiers supprimés ne soient pas déplacés vers la Corbeille (aucune récupération possible)





Lancez la suppression depuis une invite de commandes en utilisant une commande similaire à (utilisez del /? pour voir tous les paramètres) :


  del /f /q *.*           (del in current folder, add `/s` to traverse sub-folders)
del /f /q /s folder

AyiNEDJIMI
Messages : 51
Inscription : sam. mars 15, 2025 12:53 am

Re: Windows 10 supprime de nombreux petits fichiers très lentement. Peut-on faire quelque chose pour accélérer le processus ?

Message par AyiNEDJIMI »

Bonjour,


Ce problème de suppression lente de nombreux petits fichiers est extrêmement courant et bien documenté. Avec des dizaines de milliers de fichiers JPEG de 20 Ko, vous touchez à une limitation fondamentale du système de fichiers NTFS couplée au comportement de l’Explorateur Windows. Voici l’analyse complète et les solutions pour accélérer drastiquement vos suppressions.


Pourquoi Windows 10 est lent à supprimer de nombreux petits fichiers


1. Le problème de la Corbeille


Par défaut, l’Explorateur Windows déplace les fichiers dans la Corbeille avant de les supprimer. Pour des dizaines de milliers de fichiers, cela implique :



  • Calcul de la taille totale (opération séquentielle sur chaque fichier)

  • Déplacement métadonnées par métadonnées vers $Recycle.Bin

  • Mise à jour du Master File Table (MFT) pour chaque entrée


Cette opération est O(n) — linéaire par rapport au nombre de fichiers — et génère énormément d’opérations d’I/O aléatoires, ce qui est très pénalisant même sur SSD.


2. La fragmentation du MFT sur disque dur (HDD)


Si vous travaillez sur un disque dur traditionnel (HDD), les têtes de lecture doivent se déplacer physiquement pour mettre à jour chaque entrée MFT. Avec 50 000 fichiers, cela représente des milliers de déplacements mécaniques.


3. Les notifications de changement du système de fichiers


Windows 10 émet des notifications USN Journal pour chaque modification du système de fichiers. Ces notifications sont consommées par l’Indexeur de recherche Windows, le service de synchronisation OneDrive, les antivirus, et d’autres services. Chaque suppression déclenche une cascade d’opérations secondaires.


4. L’antivirus en temps réel


Les solutions antivirus comme Windows Defender (ou tout autre antivirus tiers) interceptent chaque opération sur un fichier, y compris la suppression. Pour 50 000 fichiers JPEG, cela multiplie le temps par un facteur significatif.


Solutions classées par ordre d’efficacité


Solution 1 : Utiliser la commande del avec suppression directe (bypass Corbeille)


La méthode la plus rapide pour supprimer de nombreux petits fichiers est d’utiliser l’invite de commandes en contournant la Corbeille :


REM Supprimer tous les .jpg dans un dossier (sans confirmation, sans corbeille)
del /f /q "C:\chemin\vers\dossier\*.jpg"

REM Supprimer récursivement dans tous les sous-dossiers
del /f /q /s "C:\chemin\vers\dossier\*.jpg"

REM Supprimer un dossier entier et tout son contenu
rmdir /s /q "C:\chemin\vers\dossier"

Le flag /f force la suppression des fichiers en lecture seule, /q désactive les confirmations. rmdir /s /q est généralement la méthode la plus rapide pour supprimer un dossier complet.


Solution 2 : PowerShell avec suppression parallèle


PowerShell permet d’exploiter plusieurs threads pour les suppressions :


# Suppression rapide sans corbeille
Remove-Item -Path "C:\chemin\vers\dossier\*" -Recurse -Force

# Suppression parallèle (PowerShell 7+ recommandé)
Get-ChildItem -Path "C:\chemin\vers\dossier" -Filter "*.jpg" -Recurse |
ForEach-Object -Parallel { Remove-Item $_.FullName -Force } -ThrottleLimit 8

# Pour un dossier entier : la méthode la plus rapide
[System.IO.Directory]::Delete("C:\chemin\vers\dossier", $true)

La dernière méthode utilisant [System.IO.Directory]::Delete appelle directement l’API .NET et est souvent 2 à 5 fois plus rapide que Remove-Item.


Solution 3 : Désactiver temporairement l’indexation et l’antivirus


# Désactiver Windows Search (indexeur) pendant la suppression
Stop-Service -Name "WSearch" -Force
Write-Host "Indexeur arrêté — procédez à la suppression maintenant"

# Réactiver après suppression
Start-Service -Name "WSearch"

Pour Windows Defender, ajoutez le dossier en exclusion temporaire avant de supprimer :


# Ajouter une exclusion temporaire
Add-MpPreference -ExclusionPath "C:\chemin\vers\dossier"

# Supprimer l'exclusion après la suppression
Remove-MpPreference -ExclusionPath "C:\chemin\vers\dossier"


Avertissement : Ne laissez pas une exclusion antivirus active sur un dossier de production.



Solution 4 : Outil RoboCopy (miroir d’un dossier vide)


Une technique très efficace pour supprimer de nombreux fichiers est de “miroir” un dossier vide sur le dossier cible avec RoboCopy :


REM Créer un dossier vide temporaire
mkdir C:\DossierVide

REM Utiliser RoboCopy pour vider le dossier cible ultra-rapidement
robocopy C:\DossierVide "C:\chemin\vers\dossier" /MIR /MT:16

REM Supprimer ensuite le dossier lui-même
rmdir /s /q "C:\chemin\vers\dossier"

/MIR synchronise en miroir (supprime tout ce qui n’est pas dans la source), /MT:16 utilise 16 threads en parallèle. Cette méthode peut être 10 à 20 fois plus rapide que la suppression via l’Explorateur pour des milliers de fichiers.


Comparatif des méthodes


















































MéthodeVitesse relativeComplexitéRisque
Explorateur Windows (Corbeille)Très lente (référence)NulleNulle
del /f /q3-5x plus rapideFaibleFaible
rmdir /s /q5-10x plus rapideFaibleFaible
PowerShell [IO.Directory]::Delete5-10x plus rapideFaibleFaible
RoboCopy /MIR /MT:1610-20x plus rapideModéréeModérée
RoboCopy + désactivation indexeur15-30x plus rapideModéréeFaible

Recommandations pour votre workflow habituel


Puisque vous traitez régulièrement des lots de dizaines de milliers de JPEG, voici un script PowerShell réutilisable :


# Script de suppression rapide d'un lot de fichiers JPEG
param(
[Parameter(Mandatory=$true)]
[string]$DossierCible
)

Write-Host "Préparation de la suppression rapide de : $DossierCible"

# Arrêter l'indexeur temporairement
$indexeur = Get-Service -Name "WSearch" -ErrorAction SilentlyContinue
if ($indexeur -and $indexeur.Status -eq "Running") {
Stop-Service -Name "WSearch" -Force
$indexeurActif = $true
Write-Host "Indexeur Windows Search arrêté"
}

# Supprimer via l'API .NET directement
$chrono = [System.Diagnostics.Stopwatch]::StartNew()
try {
[System.IO.Directory]::Delete($DossierCible, $true)
Write-Host "Suppression terminée en $($chrono.Elapsed.TotalSeconds) secondes"
} finally {
# Toujours réactiver l'indexeur
if ($indexeurActif) {
Start-Service -Name "WSearch"
Write-Host "Indexeur Windows Search redémarré"
}
}

Utilisez ce script avec : .\suppression_rapide.ps1 -DossierCible "C:\lot_jpeg_ancien"


Impact du type de stockage

































Type de stockageComportement sur petits fichiersConseil
HDD (disque dur)Très lent (I/O aléatoires pénalisants)RoboCopy /MT indispensable
SSD SATAModérédel ou rmdir suffisants
SSD NVMeRapide mais limité par NTFS[IO.Directory]::Delete optimal
Réseau (NAS/SMB)Très lent (latence par fichier)RoboCopy avec /MT

Si vous travaillez fréquemment avec ce type de lots, envisagez également de placer vos dossiers de travail temporaires sur un volume ReFS (Resilient File System) qui gère beaucoup mieux les opérations sur grand nombre de petits fichiers que NTFS.


N’hésitez pas à préciser votre type de stockage et le nombre exact de fichiers par lot pour affiner les recommandations.




Ayi NEDJIMI — Consultant IT & Microsoft

Pour un accompagnement personnalisé : ayinedjimi-consultants.fr

Répondre

Revenir à « Windows 10 »