Actualités

Convertir des fichiers textes Windows en Unix (et vice versa)
clockEcrit par Poil | clock2008-03-16 19:51:38

Ce soir j'avais besoin de convertir un fichier texte au format Windows contenant un script bash en format Unix... Pas moyen de retrouver la commande au fond de ma mémoire.

A noter que sous VI il suffit de faire (me sert souvent sous AIX) :

  • :0,$s/"CTRL V" "CTRL M"//g 

Donc comme d'habitude une petite note sur O-Y qui vous servira peut-être également.

Sous vim :

  • :set ff=unix
    Converti le fichier en mode unix
  • :set ff=dos
    Converti le fichier en mode Dos/Windows

Sinon en perl, une commande pratique ;

  • perl -pi -e 's/\r//g' monfichier.txt

Commentaires

 
:D
clockEcrit par ultimatia_ | clock2008-03-18 09:08:14
cat Fichier_source | sed -e "s/^M//g" > Fichier_corrige

Oui Oui le g c'est mieux sinon on pourrai passer à coté de quelques occurrences dans la même ligne... mais bon pour les ^M qui signifie "retour à la ligne" il ne devrait pas trop y avoir de problème, enfin c'est on jamais =)
Sinon le ^M se fait en faisant ctrl+v puis entrée et non pas ^+M ;)
 
 
sed
clockEcrit par Poil | clock2008-03-17 19:55:49
moi en sed je fais sed -e "s/\r//g"
 
 
Juste pour ramener ma fraise ...
clockEcrit par ultimatia_ | clock2008-03-17 14:23:11
Pour supprimer les ^M d'un gros fichier l'ouvrir dans un VI n'est pas conseillé ;)
Pour cela il vaut mieux prendre l'option suivante :
cat Fichier_source | sed -e "s/^M//" > Fichier_corrige

Pour les "petits fichiers" :
Il est aussi possible de supprimer les ^M sous l'éditeur Notepad ++ en faisant : Format / convertir en format Win ou unix.

Juste une petite info : Lors d'un transfert de fichier par FTP on peut récupérer des ^M il faut donc faire un transfert en mode ASCII (Avec FileZilla entre autre).
 
Développé par Poil - Graphismes de DarkDaV - Icônes sous licence Creative Commons (famfam, nuovo ...)
Durée de génération : 1.2756249904633 secondes