Supprimer les caractères ^M sous vi avec sed

Si vous transférez un fichier texte Windows sur un environnement Unix/Linux en mode binaire et non pas ASCII, en l’affichant sous vi (ou vim), votre fichier contiendra les caractères ^M à chaque fin de ligne, qui sont en fait des retours chariot :

L1^M
L2^M
L3^M

Plutôt que de s’amuser à retransférer les fichiers, il vous suffit de retraiter le fichier à l’aide de sed :

sed -i 's/^M//' fichier

Ou, directement dans l’interface de vi(m) :

:%s/^M//

De cette façon, l’ensemble des caractères ^M dans le document est effacé :

L1
L2
L3

Attention, les caractères ^M s’obtiennent par la combinaison suivante : Ctrl+V puis Ctrl+M.



Laisser un commentaire

Votre commentaire