Lister fichiers MySQL

Fermé
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 - 2 juil. 2012 à 17:39
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 3 juil. 2012 à 19:46
Salut,
alors , j'aimerais lister des fichiers, j'ai 700 fichiers à lister. Le tout dans le but d'être stocké dans une table MySQL.
J'ai réussi à lister mes fichiers comme ça :
Colonne 1 : Date d'ajout
Colonne 2 : Heure d'ajout
Colonne 3 : Attribut
Colonne 4 : Taille
Colonne 5 : Nom du fichier.
Je me retrouve donc avec un fichier *.txt dans lequel se trouve ma liste.
J'aimerais maintenant importer cette liste avec PhpMyAdmin.
Or, mes colonnes ne sont pas séparées par un ";" ou une tabulation ni rien. Donc, j'aimerais trouver une solution, merci à vous ! :)


A voir également:

6 réponses

UgglyBoy Messages postés 422 Date d'inscription mercredi 24 septembre 2008 Statut Membre Dernière intervention 30 mai 2015 64
3 juil. 2012 à 01:03
elles sont séparée par quel caractère?
0
Aprexia Messages postés 82 Date d'inscription vendredi 17 décembre 2010 Statut Membre Dernière intervention 14 mai 2013 24
3 juil. 2012 à 09:41
Bonjour,

Je suppose que dans ton fichier texte, tu as un fichier par ligne, et que chaque propriété du fichier est séparé de la suivante par un espace.

SI c'est le cas il y a une solution rapide pour changer tous les espaces en ;
0
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
3 juil. 2012 à 11:54
Et bien, oui entre chaque élément de mon fichier, il y a un espace, qui n'est pas toujours de la même taille en fonction des fichiers ..
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
3 juil. 2012 à 13:44
Salut,

Montre un exemple représentatif de lignes, stp.


Dal
0

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

Posez votre question
jobertomeu Messages postés 1189 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 5 février 2015 86
3 juil. 2012 à 16:45
:

24/04/2010 20:25:26      A-----   1 490 706 432       Img_ThinClient_eLux-1.4.8.iso
06/08/2010 11:10:14  A-----           733 974 528    Img_ThinClient_eLux-1.4.9.iso
0
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 1 092
3 juil. 2012 à 19:46
Salut jobertomeu,

Voilà un truc que tu peux adapter pour convertir le contenu du fichier en requêtes MySQL pour ta base de données,

$ cat donnees.txt
24/04/2010 20:25:26      A-----   1 490 706 432       Img_ThinClient_eLux-1.4.8.iso
06/08/2010 11:10:14  A-----           733 974 528    Img_ThinClient_eLux-1.4.9.iso


$ cat donnees.txt | ./donnees-vers-sql.pl
insert into matable (date,fichier,taille) values ("2010-04-24 20:25:26","Img_ThinClient_eLux-1.4.8.iso",1490706432)
insert into matable (date,fichier,taille) values ("2010-08-06 11:10:14","Img_ThinClient_eLux-1.4.9.iso",733974528)


$ cat donnees-vers-sql.pl
#!/usr/bin/perl

use warnings;
use strict;

while (<STDIN>)
{
  chomp;
  if (/(^\d{2})\/(\d{2})\/(\d{4})\s(\d{2}:\d{2}:\d{2})\s+A-----\s+([0-9\s]+)(.*$)/)
  {
    my $date = "$3-$2-$1 $4";
    my $fichier = "$6";
    my $taille = "$5";
    $taille =~ s/\s//g;
    print "insert into matable (date,fichier,taille) values (\"$date\",\"$fichier\",$taille)\n";
  }
}

Pour que cela marche, il faut :

- que toutes les dates soient au format jj/mm/aaaa hh:mm:ss
- que tous les fichiers soient de type "archive"
- qu'aucun nom de fichier ne commence par un chiffre


Dal
0