Export de donnees sous bash dans un fichier csv

Export de donnees sous bash dans un fichier csv Export des coordonnées des calques sur un fichier csv » Forum - The Gimp [LabVIEW] Export de données vers fichier .txt » Forum - Programmation Exporter des données d'un fichier excel » Forum - Excel Exporter les données d'un fichier excel » Forum - Excel Exporter des données vers un fichier PDF » Forum - Webmaster

Bonjour,

Je travaille actuellement sur un pc centos7 je genere des rapports avec des scripts en bash.
J'ai donc un fichier texte "rapport.out" et j'aurai besoin de recuperer certaines de ces donnees en les exportant dans un fichier excel/CSV.
Je ne sais pas du tout comment m'y prendre je debute en bash.

Toutes pistes de depart sont les bienvenues !
Je ne trouve pas de methodes sur internet...

Merci !

Forum

Export de donnees sous bash dans un fichier csv Export des coordonnées des calques sur un fichier csv » Forum - The Gimp [LabVIEW] Export de données vers fichier .txt » Forum - Programmation Exporter des données d'un fichier excel » Forum - Excel Exporter les données d'un fichier excel » Forum - Excel Exporter des données vers un fichier PDF » Forum - Webmaster

Web: www.shapebootstrap.net

7 réponses

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

Pour que quelqu'un qui connait le scripting sous linux puisse te donner des pistes, il faudrait que tu détailles ta question, pour le moins que tu décrives le contenu de ton fichier en entrée et le format du fichier voulu au final. Tu peux aussi donner un exemple du contenu du fichier.

Cdlt

Reply

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Ok le fichier d'entree est un fichier texte avec des donnees de type :

Duree totale du test : hh:mm:ss
Nombre d'iteration : x
Tests reussis : y
Tests rates : x - y
ratio : (y/x)*100

Ensuite il y a differents type d'erreurs possibles identifies dans le fichier texte par exemple :
erreur 1 : 12
erreur 2 : 8
erreur 3 : 0

Je souhaite donc a partir de ces donnees creer un fichier csv du type :

Duree test, Nombre iteration, passed, failed, ratio, erreur 1, erreur 2, erreur 3
hh:mm:ss, x, y, x-y, (y/x)*100, 12, 8, 0,


Je ne sais pas si il vaut mieux prendre en fichier d'entree le fichier texte ou le script generant le fichier texte.

J'ai pense a utiliser les fonctions de 'grep' pour recuperer chaque donnee souhaite mais je crains que ca soit un peu lourd.


Merci !

Reply
réponses:
  • lapiel

    salut,

    c'est tout ? il n'y a que ça dans le fichier ?
    alors ce n'est pas compliqué : tu concatènes dans une variable tout ce qui est après les deux points, et quand le fichier est fini d'être lu ligne par ligne, hop! tu affiches le contenu de la variable.

    mais on ne va pas le faire à ta place.

  • auteur

    Non c'est un fichier assez important avec les logs de chaque iteration du test, mais en ecrivant le script j'ai fait apparaitre au debut du rapport un resume avec ces donnees.
    Avec une commande "head -n20 report.out" j'affiche que les donnees que je souhaite exporter.

    Pour l'instant j'ai une dizaine de rapports et je souhaite faire un excel/CSV avec les donnees de tous.

  • lapiel

    sans structure de données stable fournie, pas de réponse réaliste possible.

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Je vais rediriger la discussion vers le forum linux qui semble plus adapté.

Si le txt est généré par un script, ce même script pourrait effectivement à la place constituer le csv.

le grep/sed risque d'être compliqué pour rassembler des lignes. Il faudrait plutôt regarder du coté du awk. Je ne pratique pas assez pour t'aider sur ces commandes, je vais laisser de plus qualifiés poursuivre ;-)

Reply
réponses:
  • auteur

    Ok merci

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed