Pour virer tous les ^M, sous joe faire:
- ^K F (ctrl+k+f: rechercher)
- \015
- r (remplacer)
- enter (par rien)
- r (sur le reste du texte)
Ainsi on converti le texte de dos à unix.
Pour voir et écrire les fichiers textes au format dos: ^K Z
# ouééééééé
Posté par arioch . Évalué à 1.
[^] # Re: ouééééééé
Posté par Piksou . Évalué à 1.
[^] # Re: ouééééééé
Posté par Rage . Évalué à 1.
Pour moi l'énoOorme avantage de joe face à vi c'est que quand on est dedans on fait CTRL-C et on sort, tandis qu'avec vi j'ai déjà vu des étudiants rebooter la machine ;-((
[^] # Re: ouééééééé
Posté par Jean-Philippe COMBE . Évalué à 1.
# Re: De DOS à Unix sous joe
Posté par vazco . Évalué à 2.
Il y en a un qui s'appelle tofromdos dans le paquet sysutils, avec les commandes dos2unix et unix2dos comme wrapper.
C'est :
- plus simple ;
- automatisable ;
- et ça n'enlève que les retours chariot suivis d'un saut de ligne (sauf ordre explicite). ;-)
mes 2¢
[^] # Re: De DOS à Unix sous joe
Posté par benja . Évalué à 1.
A defaut, je me contente parfaitement d'un
tr -d '\r' > unix.txt < dos.txt
Le seul défaut c'est que çà enlève un retour-chariot même s'il n'est pas accompagné d'un saut de ligne. Mais bon, je vois pas l'intérêt d'avoir un retour chariot seul dans fichier texte...
[^] # Re: De DOS à Unix sous joe
Posté par Baptiste SIMON (site web personnel) . Évalué à 1.
[^] # Re: De DOS à Unix sous joe
Posté par vincent mary . Évalué à 1.
selon la version de sed, le -i fait que le monfichier est remplacé par le nouveau. Plus besoin de passer par un fichier tampon. :)
# Divers moyens de convertir
Posté par Jean-Pierre Schwickerath (site web personnel) . Évalué à 2.
(from the sysutils package)
recode l1/crlf..l1 file
(from the recode package)
konwert -O lf file
(from the konwert package)
tr -d '\015' <> file.new
(no non-base packages required)
cr - file file.new
(from the seesat5 package)
:g/^V$/s///
(using vim: ^V=ctrl+v)
:g/^V^M$/s///
(using vim: ^M=ctrl+M)
Source: http://snoopy.apana.org.au/~bam/debian/faq/#msdos:textconvert(...)
[^] # Re: Divers moyens de convertir
Posté par Matafan . Évalué à 1.
:set ff=unix
Ou bien, pour la transformation inverse :
:set ff=dos
[^] # Re: Divers moyens de convertir
Posté par Jerome Demeyer . Évalué à 1.
:%s/^M//
le "%" c'est pour dire "sur toutes les lignes"
le " s/.../..../ " c'est pour remplacer un pattern (a la sed)
[^] # Re: Divers moyens de convertir
Posté par korben . Évalué à 1.
A noter que pour produire un ^M dans la ligne ":%s/^M//" on peut taper ^V puis entrée.
[^] # Re: Divers moyens de convertir
Posté par spart . Évalué à 1.
[^] # Re: Divers moyens de convertir
Posté par pasPierre pasTramo . Évalué à 1.
non?
[^] # De Mac aussi
Posté par Arthur Accroc . Évalué à 1.
C'est ce que je me disais aussi...
Pour les non initiés, l'option -i, indiquant la modification en place du fichier, prend en argument un suffixe pour un éventuel backup de sorte que
perl -pi.dos -e 's#\r\n#\n#gs' fichier
conservera l'ancienne version sous le nom fichier.dos .
À noter que cette version ne convertit les \r qu'associés à un \n, préservant les autres, alors que la variante suivante :
perl -pi -e 's#\r\n?#\n#gs' fichier
permet par contre de convertir indifféremment les fin de ligne des fichiers texte DOS/Windows et MacOS (au moins jusqu'à MacOS 9, les fins de lignes sont composées d'un retour chariot uniquement), tout en laissant inchangés les fichiers texte Unix.
« Le fascisme c’est la gangrène, à Santiago comme à Paris. » — Renaud, Hexagone
[^] # Re: Divers moyens de convertir
Posté par Troy McClure (site web personnel) . Évalué à 1.
menu: Mule/set coding system/buffer file:
"rawtext-unix" puis File/save
pour convertir de dos vers unix
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.