Français
Télécharger gratuitement

macOS et Windows. Vos fichiers restent sur votre ordinateur.

Supprimer les espaces dans les noms de fichiers

Pour supprimer les espaces de nombreux noms de fichiers, retirez d’abord ceux du début et de la fin de chaque nom, fusionnez les doubles espaces, puis remplacez les espaces restants par des tirets. L’outil Renommer par lots de Hangar fait les trois en une seule passe et affiche chaque nouveau nom avant de rien changer. Un simple remplacement dans le Finder ou dans un terminal transforme un double espace en double tiret.

Nous avons testé sur 46 fichiers de bureau fictifs dont les noms cumulaient tous les défauts possibles, avec Hangar 0.12.2 et 0.12.3 et le Finder sous macOS 27.0.1, et avec PowerShell sous Windows.

Nettoyer tout un dossier dans Hangar

Voici l’effet de chaque étape sur un nom en désordre :

Cinq étapes. Final Report, deux espaces, (v2), un espace, .docx perd l’espace avant .docx avec Trim spaces at the ends. Collapse double spaces réduit les deux espaces à un seul. Spaces to dashes donne Final-Report-(v2).docx. Lowercase donne final-report-(v2).docx

Dans l’application (en anglais), l’outil s’appelle Batch Rename.

  1. Ouvrez Batch Rename, cliquez sur Folder et choisissez le dossier.

  2. Cliquez sur add à côté de Refinements et choisissez Clean up. Trim spaces at the ends et Collapse double spaces sont activés d’emblée.

  3. Passez le menu Keep spaces sur Spaces → dashes.

    La carte Clean up avec Trim spaces at the ends et Collapse double spaces cochés et le menu réglé sur Spaces to dashes, au-dessus d’une carte Change case réglée sur lowercase
  4. Ajoutez Change case. Il démarre sur lowercase (tout en minuscules).

  5. Parcourez la file d’attente. Chaque fichier affiche son nouveau nom sous l’ancien, et les doublons apparaissent en rouge.

  6. Laissez Save copies sélectionné pour garder vos originaux intacts, puis cliquez sur Rename 46 files to copies (le bouton affiche votre propre nombre de fichiers).

File de Batch Rename avec des nouveaux noms en minuscules et à tirets. Hero Image.png et Hero-Image.png affichent tous deux hero-image.png en rouge, avec un message à côté de chacun

Hangar a signalé 2 doublons de noms et bloqué le renommage, car Hero Image.png et Hero-Image.png seraient devenus tous les deux hero-image.png. Nous en avons retiré un de la file, et les 45 autres sont passés :

Avant Après Hangar
Final Report (v2) .docx final-report-(v2).docx
Read me first .txt read-me-first.txt
" leading space.txt" leading-space.txt
INVOICE #0042 .pdf invoice-#0042.pdf
Agenda - Monday.docx agenda—monday.docx

« agenda—monday » montre ce que le nettoyage ne peut pas deviner : un tiret déjà présent dans le nom reste en place, tout comme les symboles.

Retirer les symboles et les tirets en série

Deux réglages Find and replace de plus terminent le travail. Ajoutez-les sous Change case, cochez Regex sur chacun, et laissez Replace with vide sur le premier.

Find Replace with Effet
[^\p{L}\p{N}-]+ rien Retire tout sauf les lettres, les chiffres et les tirets
-{2,} - Réduit toute suite de tirets à un seul
File de Batch Rename après les deux remplacements. Budget 2027 [draft].xlsx affiche budget-2027-draft.xlsx et Draft (do not send).docx affiche draft-do-not-send.docx

Résultat : agenda—monday.docx est devenu agenda-monday.docx et q3-p&l-#draft.xlsx est devenu q3-pl-draft.xlsx. Vérifiez deux choses dans l’aperçu. Les tirets bas disparaissent aussi : résumé_v2 est devenu résumév2. Une parenthèse sans espace devant se colle au mot : q4-forecast(v3) est devenu q4-forecastv3.

D’autres motifs de ce genre sont dans notre guide pour rechercher et remplacer dans les noms de fichiers.

Pourquoi les espaces dans les noms de fichiers posent problème

  • Les liens. Un espace n’est pas autorisé dans une adresse web, il est donc encodée en %20. « Facture mars.pdf » devient Facture%20mars.pdf.
  • La ligne de commande. Un espace sépare un mot du suivant : un script lit « Facture mars.pdf » comme deux fichiers, sauf si le nom est entre guillemets.
  • Windows. Les règles de nommage de Microsoft précisent qu’un nom de fichier ne doit pas finir par un espace ou un point, ce qui compte pour un nom comme « Devis .xlsx ».

Tirets ou tirets bas ?

Prenez des tirets pour tout ce qui peut finir sur le web. Google recommande les tirets plutôt que les tirets bas pour séparer les mots dans une URL. Les tirets bas conviennent aux fichiers lus par du code, où un tiret peut vouloir dire « moins ». Choisissez l’un des deux et gardez-le pour tout le dossier.

Quels caractères posent encore problème ?

  • Sur Windows : < > : " / \ | ? * sont réservés et ne peuvent pas apparaître du tout dans un nom de fichier.
  • Dans les liens web : #, ?, % et & ont un sens propre dans une URL. Ils sont encodés ou coupent le lien.

Les accents fonctionnent sur les systèmes actuels, et la regex ci-dessus les garde. Si vous avez besoin de lettres sans accent, cochez Accents to plain letters dans Clean up : « Résumé_v2 .docx » est devenu resume_v2.docx. Laissez Plain letters and numbers only désactivé pour ce travail. Cette option supprime les lettres accentuées au lieu de les simplifier : « Café menu.pdf » est devenu Caf menu.pdf.

Supprimer les espaces avec le Finder

Fichier > Renommer, Remplacer le texte, un espace dans Rechercher et un tiret dans Remplacer par. Ça convient à des noms propres, avec des espaces simples. Sur des noms en désordre, il remplace chaque espace et rien d’autre :

Avant Après le Finder
Agenda - Monday.docx Agenda—–Monday.docx
Read me first .txt Read-me-first-.txt
Hero Image.png Hero-Image 2.png

C’est la dernière ligne qu’il faut surveiller. Un fichier Hero-Image.png existait déjà, alors le Finder a ajouté « 2 » sans demander, ce qui a remis un espace dans le nom. Cmd+Z juste après a remis les 46 noms d’origine.

Supprimer les espaces en une ligne de terminal

L’Explorateur de fichiers ne sait pas le faire : il ne peut que donner un même nouveau nom à une sélection, suivi d’un numéro. Une seule ligne fait le remplacement simple sur l’un ou l’autre système. Aucune des deux versions n’affiche d’aperçu ni ne fusionne les doubles espaces : lancez-la sur une copie.

Sur Mac, dans le Terminal (zsh) :

for f in *' '*; do mv -n -- "$f" "${f// /-}"; done

Sur Windows, dans PowerShell :

Get-ChildItem -File | Where-Object Name -Like '* *' | Rename-Item -NewName { $_.Name -replace ' ', '-' }

Les deux ont laissé Hero Image.png tel quel, puisque le nom était déjà pris. Sur Mac, la commande a renommé les 44 fichiers qu’elle pouvait.

Notre guide pour renommer plusieurs fichiers en même temps donne la règle de nommage complète, et notre article sur Bulk Rename Utility sur Mac vous aidera si vous venez de Windows. Les autres outils de fichiers de Hangar sont dans la catégorie Fichiers.

Nettoyez les noms de tout un dossier, hors ligne, avec chaque nouveau nom affiché d’abord.