Concaténer des lignes [Résolu/Fermé]

Signaler
Messages postés
74
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
6 août 2013
-
Messages postés
35359
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
-
Bonjour,
J'ai une commande qui me retourne les lignes suivantes:
IP 1
IP 2
IP 3
...

(le nombre de ligne est aléatoire)
je voudrai les concaténer de cette manière:

IP 1 or dst ip IP2 or dst ip IP3 ...
j'ai utilisé cette commande au début:

commande | xargs echo | tr ' ' ':' 


pour les séparer avec ':' mais quand j'ai voulu changer le separateur avec la chaine 'or dst ip ' ca n'a pas marché.

Comment je fais?
merci

2 réponses

Messages postés
35359
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 331
Salut,

Parce que la commande "tr" n'admet qu'un caractère en remplacement et non plusieurs comme tu le souhaites. Il suffit de changer de commande...

$ cat plop 
IP1
IP2
IP3
IP4
IP5
IP6

$ cat plop | xargs echo | sed 's/ / or dst ip /g'
IP1 or dst ip IP2 or dst ip IP3 or dst ip IP4 or dst ip IP5 or dst ip IP6

Messages postés
74
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
6 août 2013
1
je te remercie ça marche.
Messages postés
35359
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
11 août 2020
5 331
De rien ;-)