Convertir fichiers textes au format unix [Résolu]

Messages postés
130
Date d'inscription
jeudi 16 avril 2009
Dernière intervention
8 décembre 2015
- - Dernière réponse : cs_nitho
Messages postés
130
Date d'inscription
jeudi 16 avril 2009
Dernière intervention
8 décembre 2015
- 22 juil. 2011 à 18:27
Salut tout le monde !!!!!

dites j'ai un petit souci, j'aimerais convertir plusieurs fichiers du format dos au format unix à partir de la console.
Je ne m'y connais pas trop, j'ai vu des trucs avec sed du genre

Code : Autre - Sélectionner

1



sed 's/$/^M/' fichier



mais ça m'affiche le résultat sur la console et le fichier lui même n'est pas modifié. SVP aidez moi...


Merci d'avance je compte sur vous.


nitho l'amateur
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
3830
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
19 novembre 2018
3
Merci
C'est pour ça que je t'ai dit qu'il te faut apprendre les bases du script shell...

Exemple: pour tous les fichiers du dossier courant:
for file in `ls *`; do
  sed 's/$/^M/' ${file} > ./tempo/${file}
done


A mettre dans un fichier *.sh, ou à écrire en une seul ligne de commande:
for file in `ls *`; do sed 's/$/^M/' ${file} > ./tempo/${file}; done


________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question

Merci cptpingu 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de cptpingu
Messages postés
3830
Date d'inscription
dimanche 12 décembre 2004
Dernière intervention
19 novembre 2018
0
Merci
Bonjour.

Il faut pousser le résultat du ficher modifié dans un nouveau fichier, tout simplement.

Ex:
sed 's/$/^M/' fichier > fichier2

Je t'invite à apprendre les bases du script shell, ça t'aidera énormement.

________________________________________________________________________
Historique de mes créations, et quelques articles:
[ http://0217021.free.fr/portfolio http://0217021.free.fr/portfolio]
Merci d'utiliser Réponse acceptée si un post répond à votre question
Commenter la réponse de cptpingu
Messages postés
130
Date d'inscription
jeudi 16 avril 2009
Dernière intervention
8 décembre 2015
0
Merci
Mon problème c'est que je veux le faire en une fois sur tous les fichiers de répertoire par exemple.

la redirection de flux je connais.

j'ai même essayé:

find . -name "*" -exec sed 's/$/^M/' {} > ./tempo/{} \;

en vain... tempo est un sous dossier vide du répertoire courant.


nitho l'amateur
Commenter la réponse de cs_nitho
Messages postés
130
Date d'inscription
jeudi 16 avril 2009
Dernière intervention
8 décembre 2015
0
Merci
Cooollll that's it mann


nitho l'amateur
Commenter la réponse de cs_nitho

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.