web-dev-qa-db-fra.com

Quelque chose comme DOS2Unix pour Windows?

J'ai des scripts shell créés sur les fenêtres sur lesquelles je veux exécuter Dos2Unix .

Mais comme j'ai lu que Dos2Unix fonctionne dans Linux environment donc, y at-il moyen de convertir mes fichiers au format UNIX lorsque je travaille dans Windows?

J'ai déjà installé CYGWIN mais je suis confronté à quelques problèmes en tant que

 Administrateur @ SGH735082N ~ 
 $ Pwd 
/Home/Administrateur 
 
 Administrateur @ SGH735082N ~ 
 $ Cd C:\CVS Code 
 
 Administrateur @ SGH735082N /cygdrive/c/CVS
. dos2Unix BLPDB000 
 BLPDB000: 
 Le traitement de dos2Unix BLPDB000: Aucun fichier ou répertoire de ce type 
 
 Administrateur @ SGH735082N /cygdrive/c/CVS
. dos2Unix -h 
 Dos2Unix: argument incorrect, -h: option inconnue 
 
 Administrator @ SGH735082N /cygdrive/c/CVS
$ dos2Unix --help 
 Dos2Unix version 0.1.3 
 Convertit les fins de ligne des fichiers texte à partir du style 
 DOS (0x0d 0x0a) en style UNIX (0x0a) 
 
 Utilisation: dos2Unix [OPTION ...] [liste de fichiers d'entrée ...] 
 
 Options principales ( 
 -A, --auto Le format de sortie sera l'inverse de la source détectée automatiquement 
 format 
 -D, --u2d La sortie sera au format DOS 
 --unix2dos La sortie sera au format DOS 
 -U, --d2u La sortie sera au format UNIX 
 --Dos2unix La sortie sera au format UNIX 
 --Force Ignorer la détection de fichier binaire 
 --Safe Ne pas modifier les fichiers binaires 
 
 Options d'aide 
 - ?, --help Afficher ce message d'aide 
 --Usage Afficher un bref message d'utilisation 
 --Version Afficher des informations sur la version 
. --license Afficher les informations de licence 
 
 Autres arguments 
 [liste des fichiers en entrée ...] pour chaque fichier répertorié, convertir en place. 
 Si aucun n'est spécifié, alors utilisez stdin/stdout 
 
 Administrateur @ SGH735082N /cygdrive/c/CVS[.____. Printerers.re. ____.] $ dos2Unix -oBLPDB000 
 dos2Unix: argument incorrect -oBLPDB000: option inconnue 
 
 Administrateur @ SGH735082N /cygdrive/c/CVS[.____.____.nnnnnnnnnnnn -k BLPDB000 
 dos2Unix: argument incorrect -k: option inconnue 
 
 Administrateur @ SGH735082N/cygdr ive/c/CVS 
 $ dos2Unix BLPDB000.txt 
 BLPDB000.txt: 
 dos2Unix en cours de traitement BLPDB000.txt: Aucun fichier ou répertoire 
 
. Administrateur @ SGH735082N /cygdrive/c/CVS
$ pwd 
/Cygdrive/c/CVS 
 

Merci

12
Elvin

Vous pouvez utiliser Notepad ++ .

Les instructions pour convertir un répertoire de manière récursive sont les suivantes:

  1. Menu: Rechercher -> Rechercher dans les fichiers ...
  2. Répertoire = le répertoire que vous souhaitez convertir au format Unix, de manière récursive. Par exemple, C:\MyDir
  3. Trouver quoi =\r\n
  4. Remplacer par =\n
  5. Mode de recherche = étendu
  6. Appuyez sur "Remplacer dans les fichiers"
7
Ahmad Boorghany

Si vous avez installé Perl, vous pouvez simplement exécuter:

Perl -i -p -e "s/\r//" <filename> [<filename2> ...]
6
shx2

Il y a au moins deux ressources:

  • dos2unix sur SourceForge , qui semble être activement maintenu (à partir de 2015), et qui contient des versions précompilées pour Windows, à la fois 32 et 64 bits. Inclut également unix2dos, mac2unix et unix2mac.
  • CygUtils de GnuWin32 , qui sont des utilitaires divers fournis par Cygwin, qui comprend dos2unix ainsi que plusieurs autres utilitaires associés. Ce paquet n'est pas maintenu activement (la dernière mise à jour date de 2008).
4
Mike T

J'ai utilisé grepWin :

  • Ouvrez le dossier contenant vos fichiers dans grepWin
  • Dans la section "Rechercher"
    • sélectionnez "Recherche Regex"
    • Recherche de -> \r\n
    • Remplacer par -> \n
  • Appuyez sur "Rechercher" pour confirmer quels fichiers seront touchés, puis sur "Remplacer".
0
Antonio

Vous utilisez une très ancienne version de dos2unix sur Cygwin. Cygwin 1.7 a été remplacé par une nouvelle version de dos2unix, identique à celle livrée avec la plupart des distributions Linux, il y a environ deux ans. Mettez donc votre dos2unix à jour avec le programme d’installation de Cygwin. Vérifiez que vous obtenez la version 6.0.3.

Des ports Windows natifs de dos2unix sont également disponibles (win32 et win64). Voir http://waterlan.home.xs4all.nl/dos2unix.html

cordialement,

0
Erwin Waterlander