Désolé pour cette question apparemment simple, mais passé trop de temps à essayer de trouver la solution partout et d'essayer différentes options sed. J'ai juste besoin de remplacer tous les points par des virgules dans un fichier texte, mais seulement entre deux positions. À titre d'exemple, de:sed: remplacez un caractère seulement entre deux positions
1.3.5.7.9
à
1.3,5,7.9
, remplacez. par, entre les positions 3 à 7. Merci! EDITED: désolé, j'ai fait semblant de simplifier le problème, mais comme aucune des 3 premières réponses ne fonctionne à cause d'un manque de détails dans ma question, laissez-moi aller un peu plus loin. Le point important est de remplacer tous les points par des virgules dans un intervalle de positions sans connaître le reste de la chaîne:
Here some text. I don't want to change. 10.000 usd 234.566 usd Continuation text.
More text. No need to change this part. 345 usd 76.433 usd Text going on. So on.
Ceci est un fichier texte de largeur fixe, dans les colonnes, et je dois changer le format international des numéros , en remplaçant les points par des virgules. Je connais juste les positions initiales et finales où j'ai besoin de chercher et éventuellement remplacer les points. Évidemment, toutes les figures n'ont pas de points (seulement ceux de plus de 1000). Merci.
Sory, j'espère que la question est un peu plus claire maintenant. –
@jm_ J'ai changé la réponse en fonction de la question clarifiée. –
Décidément, sed n'est pas toujours la solution la plus simple! Merci pour votre écriture. Je vais ajouter ci-dessous ce que j'ai trouvé plus pratique ... –