Modif fichier texte et insersion dans MySQL

Fermé
isis9575 - 4 août 2010 à 17:14
 isis9575 - 6 août 2010 à 15:25
Bonjour,

J'ai un fichier texte qui est composé de deux lignes récurrentes avec sur chaque première ligne le chiffre 1 puis des données séparées par une tabulation, et la deuxième ligne avec le chiffre 2 et encore des données.

1 03431U 68081D 10212.22119716 .00000000 00000-0 10000-3 0 8015
2 03431 009.6254 328.7630 0006980 281.5549 078.4636 01.00251372 62840

Je voudrais via un script en PERL peut être ou PHP, qui supprime le chiffre 1 et insère les données dans MySQL et idem avec la deuxième ligne. Car la référence (la clé) est la première donnée de chaque ligne et donc est il possible aussi de supprimer le caractère U de la première donnée de la première ligne.

Merci.



A voir également:

3 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
4 août 2010 à 18:17
Re-

Alors essaie ça (avec "sed") :

$ cat toto
1 03431U 68081D 10212.22119716 .00000000 00000-0 10000-3 0 8015
2 03431 009.6254 328.7630 0006980 281.5549 078.4636 01.00251372 62840

$ sed 's/^. //;s/U / /1' toto
03431 68081D 10212.22119716 .00000000 00000-0 10000-3 0 8015
03431 009.6254 328.7630 0006980 281.5549 078.4636 01.00251372 62840

$


;-))
1
Merci pour cette commande sed, j'ai essayé avec un fichier ayant plusieurs lignes 1 et 2 et renvoyé le résultat dans un autre fichier avec >, ça marche. Mais ce que je voudrais surtout c'est que la ligne 1 et 2 ne fassent qu'une seule ligne et si possible supprimer le nombre de 5 chiffres sur la ligne 2. Et ça de façon récurrentes bien sûr.

Merci.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
4 août 2010 à 18:05
Salut,

Perl est obligatoire ? (je pense à "sed")
Le caractère "U" sera toujours un "U" ou ça peut varier ?
0
Oui la lettre U est toujours présente à la première ligne.
0