Découpage automatique d'une ligne d'un fichier .txt

Artem -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
J'aurai voulu savoir s'il était possible de découper automatiquement un fichier texte composé d'une unique ligne en différentes lignes d'un même nombre de caractères ?
(Pas très clair...)
Par exemple : Mon fichier se présente comme ceci :
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456...

Et je voudrais le retrouver comme-ci:
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456
[tab]123456[tab]123456[tab]123456[tab]123456[tab]123456
[tab]123456...

C'est à dire, soit un retour à la ligne tous les 35caractères (dans cette exemple), soit avant le 6éme, 11éme ... [tab]
.
Pourquoi ne pas le faire manuellement? Parce que mes fichiers comportent environ 450 000 000 de [tab], et ne parlons même pas du nombre de caractères (si peu me direz-vous...)
.
Merci d'avance pour votre aide !
A voir également:

5 réponses

dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 636
 
hello
$ fold -bw 35 fichier
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456...
2
dna.factory Messages postés 25974 Date d'inscription   Statut Modérateur Dernière intervention   1 618
 
ouais mais non... c'est trop simple... c'est pas marrant...
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
dubcek ? Tu sors !

;-))
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 636
 
on peut aussi faire ave coke, alors:
$ awk -F "" '{while(++n<NF){printf $n; if(!(n%35))print ""}}' fichier
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456..$ 
$ 
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Y'a qu'à suivre la ligne ? ;-DD
0
dna.factory Messages postés 25974 Date d'inscription   Statut Modérateur Dernière intervention   1 618
 
en gros, tu veux remplacer toutes les chaines de 35 caractères, par une chaine de 35 caractères et un retour chariot.
sed devrait le permettre assez facilement.
Je regarde si je trouve, mais sinon zipe ou Dubcek trouver rapidement.
--
Stop failing the turing test !
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

$ cat plop 
	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456	123456

$ sed 's/\(\t[^\t]*\)\{5\}/&\n/g' plop 
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456	123456	123456	123456	123456
	123456

$ 
;-))
0
dna.factory Messages postés 25974 Date d'inscription   Statut Modérateur Dernière intervention   1 618
 
rha grillé par Lucky luke...
M'en fout, je donne le mien quand même (je l'ai fait avec des chaines de 5 caractères, quelques qu'ils soient.
Suffit de remplacer le 5 par 35

# cat dna
        rrfdf'"é(fqds fdesqfbvgmg       fdqfd dfsdsf
# cat dna |sed 's/.\{5\}/&\n/g'
        rrfdf
        '"é(
        fqds
        fdesq
        fbvgm
        g       fdq
        fd df
        sdsf 


(le grand trou est un [tab])
Stop failing the turing test !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dna.factory Messages postés 25974 Date d'inscription   Statut Modérateur Dernière intervention   1 618
 
Pourquoi ne pas le faire manuellement? Parce que mes fichiers comportent environ 450 000 000 de [tab], et ne parlons même pas du nombre de caractères (si peu me direz-vous...)
Et alors, t'a qu'a prendre un stagiaire non payé, c'est à ça que ça sert...

Pour rappel : les commandes sed s'utilisent par défaut sous linux, mais comme tu as dit dans l'autre sujet que ce n'était pas un problème, pas de soucis de ce coté là
0