J'ai obtenu un document que les champs sont séparés par un deux-points (:) où j'ai besoin de changer le deuxième champ de temps en temps. Le document ressemble à ceci:sed: Rechercher et remplacer colonne variable
name1:UhX.PPFW7$YhPMH0BISY:23490::::::
name2:1./0oV$GEs6WJpE$LHXhy:19239:0:29388:2::29302:
...
Le deuxième champ du fichier va changer de temps en temps et peut contenir un ou deux caractères d'expression régulière (de $.) Et une barre oblique.
Je voudrais remplacer uniquement le deuxième champ car les données qui le suivent peuvent être différentes dans le futur. Si je fais:
sed -e "s~^name2:.*:~name2:aTest\$repl.ace:~g" tst
Le texte à droite de la deuxième colonne est perdue:
name2:aTest$repl.ace:
(à savoir le '19239: 0: 29388: 2 :: 29302:'). Est-il possible que sed puisse remplacer une colonne variable et préserver le reste de la ligne? Ou, peut-être, y a-t-il un meilleur programme pour le faire?
Hé c'est génial. Je me demandais si c'était possible dans sed. J'ai pensé que je pourrais regarder une commande plus compliquée. Appréciez le pourboire, Anthony. –