Concatener horizontalement des fichiers - Linux et OS Alternatifs
Marsh Posté le 11-01-2006 à 16:27:31
Merci pour awk je connais, mais le but c'est de le faire souvent sur pas mal de machines, donc si une commande existait ca serait pas mal du tout et ca me simplifierait grandement la vie.
maintenant s'il n'existe rien, ben je scripterai...
Concernant ultraedit euh... comment dire... non!
ah oui parceque j'ai pas dit mais ca sera sur des machines linux/unix...
Merci quand meme
Marsh Posté le 11-01-2006 à 16:33:11
moue à ma connaissance il n'y a pas une commande qui fait ça spécifiquement
d'ailleurs c'est vrai que j'en ai déjà eu besoin et j'ai dû scripter ou utiliser ultraedit
Marsh Posté le 11-01-2006 à 22:05:40
allez hop, je me suis amusé à le faire en python.
#!/usr/bin/python
import sys
l = []
for i in range(1, sys.argv.__len__()):
l.append(open(sys.argv[i]).readlines())
nlinesmax = map(lambda x: x.__len__(), l)
nlinesmax.sort()
nlinesmax = nlinesmax[-1]
for i in range(nlinesmax): #boucle lignes
for j in range(l.__len__()): # boucle fichiers
try: sys.stdout.write(l[j][i])
except: pass
print
et ça s'utilise comme ça : machin.py fichier1 fichier2 fichier3...
Marsh Posté le 12-01-2006 à 14:22:42
Merci bien m'sieur, tu m'economises un mal de tete
faudrait qu'un jour je m'y mette au python parceque ca a l'air bien sympathique.
En tout cas merci, ca marche au poil!!!
Marsh Posté le 12-01-2006 à 14:40:13
c'est pas très beau comme langage à 1ère vue
Marsh Posté le 12-01-2006 à 15:02:10
Tomate a écrit : c'est pas très beau comme langage à 1ère vue |
la moindre des politesses serait de nous permettre la comparaison, en nous montrant ce que ça donne dans un autre langage plus "beau"...
Marsh Posté le 12-01-2006 à 15:17:59
paco81 a écrit : la moindre des politesses serait de nous permettre la comparaison, en nous montrant ce que ça donne dans un autre langage plus "beau"... |
vous imaginez tous très bien ça en perl non ?
Marsh Posté le 12-01-2006 à 15:49:22
Tomate a écrit : |
ouais, ça donne un truc comme ça : http://www.99-bottles-of-beer.net/ [...] l-737.html
non ?
Marsh Posté le 12-01-2006 à 15:51:03
En awk :
Code :
|
Marsh Posté le 12-01-2006 à 15:52:45
paco81 a écrit : ouais, ça donne un truc comme ça : http://www.99-bottles-of-beer.net/ [...] l-737.html |
Marsh Posté le 12-01-2006 à 16:56:57
Salut
Le pb c qu'en perl c tres tres lent. J'ai fait de la concat de fichiers dans ce language et en java ca va 10000 fois plus vite a peu pres. Ptet que mon code était pas optimisé, mais en tt cas je déconseille.
a+
foiro
Marsh Posté le 12-01-2006 à 17:00:48
ça dépend de la taille des fichiers bien sûr
Marsh Posté le 11-01-2006 à 16:19:27
Bonjour les pros,
Je souhaite concatener plusieurs fichiers dans un seul, mais comme c'est trop simple, j'aurai besoin de les concatener horizontalement... je m'explique:
j'ai un fichier qui contient:
A
B
C
et un autre qui contient:
1
2
3
et bien je voudrais obtenir:
A 1
B 2
C 3
mais avec plus que deux fichiers (ou alors a repeter la commander avec un script, c'est pas un probleme).
Y a t-il une commande qui permet de faire ca simplement et rapidement?
Tout ca pour remettre cote a cote des infos sorties d'un sar et me permettre de faire des jolis graphes.
Merci,
Max