Qu'est-ce que dos2unix et les fins de ligne ?
dos2unix est un utilitaire qui convertit les fins de ligne DOS/Windows (CRLF) en fins de ligne Unix (LF) pour rendre vos fichiers cohérents entre systèmes.
Les principales variantes et caractères liés aux fins de ligne :
1 Fins de ligne classiques selon les systèmes
LF pour Unix/Linux, CRLF pour Windows, CR pour l'ancien macOS.
2 Caractères de contrôle impliqués
CR (Carriage Return) et LF (Line Feed) pilotent les retours à la ligne.
3 Séparateurs Unicode non-standard
Peu courants mais parfois présents dans des données mixtes :
4 Marques techniques et particularités
BOM, configuration Git/éditeur, conversions automatiques :
Problèmes classiques
Copier-coller depuis Windows
Introduit des CRLF dans des scripts ou CSV destinés à Unix, provoquant des ^M.
Tests unitaires qui échouent
Snapshots ou comparaisons ligne à ligne diffèrent à cause de CRLF vs LF.
Scripts shell en erreur
/bin/bash^M: bad interpreter ou $'\r': command not found.
Merges et regex instables
EOL mixtes perturbent les merge-tools et ancrages regex en fin de ligne.
Exemple d'échec dû à CRLF :
Symptômes qui doivent vous alerter
🚨 Signaux d'alarme
Comment les détecter
✨ Solution recommandée : dos2unix
dos2unix identifie et convertit rapidement les fins de ligne CRLF en LF. Il s'intègre facilement à vos scripts et pipelines pour des fichiers cohérents sur tous les environnements Unix.
✅ Détection automatique
Reconnaît DOS/Windows, Unix et ancien Mac (CR)
📊 Informations utiles
Statut des fichiers, nombre de conversions, options verbeuses
🧹 Conversion sûre
Transforme CRLF → LF sans altérer le contenu
💾 Traitement en lot
Parcours de répertoires et intégration CI/CD
Autres méthodes de détection
Affichage dans l'éditeur
En ligne de commande (Unix)
En code
JavaScript
Python
Excel / Google Sheets
Nettoyer et prévenir
🚀 Conversion rapide avec dos2unix
Avant d’écrire des scripts maison, utilisez dos2unix pour convertir immédiatement vos fichiers CRLF en LF :
Méthodes techniques avancées
🔧 Normaliser
* text=auto eol=lf)
end_of_line = lf)
🧹 Filtrer
normalize_eol() pour transformer CRLF/CR en LF
⚙️ Automatiser
dos2unix sur les fichiers modifiés
\r$)
Checklist rapide
Conclusion
Les fins de ligne ne se voient pas toujours, mais elles brisent des builds, des scripts et des parsers. En maîtrisant dos2unix, vous éliminez une grande source d’erreurs.
Standardisez vos EOL, contrôlez vos imports et automatisez la conversion pour réduire l’essentiel des problèmes liés aux ^M.
Convertissez CRLF en LF maintenant
Utilisez dos2unix et vos outils habituels pour uniformiser les fins de ligne et éviter les erreurs en production.
Normaliser mes fichiers