#1 Le 01/07/2020, à 09:24
- GregGC

[Résolu]-Utilisation de sed-chaîner une liste de valeur
Bonjour à tous,
Je recherche le moyen rapide, à l'aide de sed (que je pense être la commande idoine),de chaîner une liste de plusieurs centaine de nombre contenue dans un fichier test.txt, en une seule ligne; ligne où chaque valeur serait séparée par ";" et renvoyée vers un fichier test_chaine.txt.
Je ne vous cache pas que man sed ou les différents tutoriaux parcourus partent très vite, très haut et trop vite ![]()
Une petite aide serait la bienvenue :-)
ex:
0097462356
1713078789
7518096357deviendrait
0097462356;1713078789;7518096357-Merci
Dernière modification par GregGC (Le 27/07/2020, à 08:39)
-/- No O/S detected
-/- Call trans opt: received 8-1-19 20:00 REC:>
-/- Warning: carrier anormaly
-/- Trace program: running ...
Hors ligne
#2 Le 01/07/2020, à 09:59
- Nuliel

Re : [Résolu]-Utilisation de sed-chaîner une liste de valeur
Hello,
Je ne maitrise pas bien sed ni awk mais voici une autre solution:
cat test.txt | tr '\n' ';' > test_chaine.txtJe laisse les pros répondre avec sed et awk ![]()
Dernière modification par Nuliel (Le 01/07/2020, à 10:00)
[ poster un retour de commande ] [ poster une photo ]
Thinkpad x220, Dell latitude E7270 (i7 6600U, 16 Go de RAM, ...), Thinkstation E32 modifié: i5-4570, GTX 1060 6 Gb, 16 Gb de RAM, ...
Mon nouveau blog: nuliel.fr
Hors ligne
#3 Le 01/07/2020, à 10:24
- pingouinux

Re : [Résolu]-Utilisation de sed-chaîner une liste de valeur
Bonjour,
sed -n ':a;$!{N;ba};s/\n/;/gp' test.txt >test_chaine.txtAjouté : Autres solutions
awk -v ORS=\; '1' test.txt | sed 's/;$/\n/' >test_chaine.txtwhile read lig;do printf "$lig;"; done <test.txt | sed 's/;$/\n/' >test_chaine.txtDernière modification par pingouinux (Le 01/07/2020, à 10:40)
Hors ligne
#4 Le 01/07/2020, à 10:49
- GregGC

Re : [Résolu]-Utilisation de sed-chaîner une liste de valeur
4 solutions pour le prix d'une !?!
What else ?
Merci à Nuliel et pingouinux
-/- No O/S detected
-/- Call trans opt: received 8-1-19 20:00 REC:>
-/- Warning: carrier anormaly
-/- Trace program: running ...
Hors ligne
#5 Le 01/07/2020, à 11:05
- sputnick

Re : [Résolu]-Utilisation de sed-chaîner une liste de valeur
Comme ça, le plus propre et efficient:
paste -sd ';' file
0362032542;0097462356;1713078789;7518096357Dernière modification par sputnick (Le 01/07/2020, à 11:05)
Hors ligne
#6 Le 01/07/2020, à 12:27
- Watael

Re : [Résolu]-Utilisation de sed-chaîner une liste de valeur
$ mapfile -t array <fichier
(IFS=';' ; echo "${array[*]}")Welcome to sHell. · eval is evil.
Hors ligne