J'essaie d'utiliser sed pour réparer un fichier, et j'ai du mal à comprendre ce que je fais de mal. Toute indication sur la raison pour laquelle sed ne se comporte pas comme je l'espère serait appréciée.Remplacer par SED, essayer d'ajouter du contenu ne fonctionne pas
Mon fichier consiste en un groupe de lignes contenant chacune une seule valeur. Le contenu des valeurs n'est pas pertinent pour le remplacement, sauf qu'ils sont toujours alphanumériques et suivent un modèle. Je veux ajouter et ajouter ces valeurs avec d'autres données, afin de créer un fichier CSV.
faisant précéder, Sed fonctionne admirablement:
PREPEND (travaux)
sed 's/\(.*\)/NULL;0;400;6;2010-07-27;\1/' selection.csv
résultant
NULL;0;400;6;2010-07-27;1326GP11SCH
NULL;0;400;6;2010-07-27;2312BB30DUM
Ce qui est exactement comme je l'espérais.
Append (échoue)
Cependant, quand annexant, les choses deviennent laides:
sed 's/\(.*\)/\1 ;NULL;NULL;1/' selection.csv
Entraînant:
;NULL;NULL;1
2312BB30DUM ;NULL;NULL;1
La disparait de valeur à être-remplacé sur tout sauf la dernière ligne, ce qui est assez décourageant.
Il doit être quelque chose de tout à fait évident que je fais mal ici, mais je ne peux pas le comprendre.
(note: Je ne sais pas si tel est ou matériel SU ... ne hésitez pas à le déplacer vers SuperUser, si vous le pouvez et nous croyons qu'il devrait être là-bas)
Vous monsieur, sont géniaux. Merci beaucoup! Réponse acceptée et mise à jour – kander