Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/02/2007, 11h59   #1
Invité de passage
 
Inscription : février 2007
Messages : 3
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2007
Messages : 3
Points : 0
Points : 0
Par défaut Question sur Grep

Bonjour à tous.

Je suis un graphiste et je ne connaît pas grand chose en programmation mais j'ai découvert hier avec beaucoup d'intérêt les commandes "Grep".

Il se trouve qu'une commande pourrait grandement me faciliter une manip pour mon boulot. Savez-vous si quelqu'un d'un peu au courant saurait me renseigner en attendant que je me perfectionne ?

Pour être plus précis, il s'agirait de créer une commande pour reformater un texte

Pour info j'utilise le logiciel éditeur de texte TexteWrangler sous Mac mais la syntaxe parait être standart.

Merci beaucoup !

zbouboy
zbouboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 16h14   #2
Expert Confirmé
 
Avatar de Katyucha
 
Inscription : mars 2004
Messages : 3 109
Détails du profil
Informations personnelles :
Âge : 31
Localisation : Allemagne

Informations forums :
Inscription : mars 2004
Messages : 3 109
Points : 3 313
Points : 3 313
Tu as le man de grep qui donne beaucoup d'informations
http://man.developpez.com/man1/grep.1.php

Ensuite si tu dois manipuler du texte dans des fichiers textes, le mieux est de peut etre voir des commandes tel que Sed ou un peu de perl avec les expressions régulières.
Quelques recherches sur le forum te donneront une idée de la puissance de ces outils
__________________
Ancien Rédacteur Linux && Unix / Nouveau retraité de DVP
The UNIX way of sex:
gunzip;strip;touch;finger;mount;fsck;more;yes;umount;sleep

Je ne réponds ni aux messages privées, ni aux messages plein de fautes...
Katyucha est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 16h29   #3
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 306
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 306
Points : 8 590
Points : 8 590
Grep ne permet que de faire des recherches sur le texte. Pour le manipuler, il faut utiliser sed ou awk, mais c'est pas une partie de plaisir à utiliser, malheureusement, et la syntaxe n'a rien à voir avec grep. Sinon, il y a effectivement aussi perl ou php qui permettent de manipuler les chaînes de caractères.

Quel genre de reformatage veux-tu faire ?
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 17h47   #4
Invité de passage
 
Inscription : février 2007
Messages : 3
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2007
Messages : 3
Points : 0
Points : 0
Par défaut Question sur "Grep"

Merci pour vos réponses.

Je travaille en ce moment pour une chaine de films classiques et j'ai besoin de reformater la programmation copiée/collée d'une page Excel et qui ressemble à ca :

Code :
1
2
3
4
22:40 A PERFECT MURDER [MEURTRE PARFAIT] 
(-10) 1995, 127 Mins, Colour, Dir : Taylor Hackford, 
Act : Kathy Bates, Jennifer Jason Leigh, Judy Parfitt, Christopher Plummer, 
VM, DRA, THR, CRIM
Et je cherche à obtenir un résultat comme ceci :
Code :
1
2
3
4
22:40 Meurtre Parfait A PERFECT MURDER
1995, Couleur, VM, THRILLER (-10)
De Taylor Hackford
Avec Kathy Bates et Jennifer Jason Leigh
Je me rapproche du résultat doucement mais c'est un peu du bidouillage (successions de 8 commandes minimum !). D'autre part je ne sais pas comment je pourrais créer un script qui me les lancerais à la chaîne (ou peut-être qu'une seule commande suffirait ?).

Si ca vous semble simple, je réclamerais bien de votre aide sur des points particuliers.

Merci beaucoup à vous (°v^·)

zbouboy
zbouboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 18h12   #5
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 306
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 306
Points : 8 590
Points : 8 590
Y a forcément une traduction ? C'est quoi les règles pour le nombre d'acteurs à faire figurer ? C'est toujours les 4 mêmes lignes en entrée (même format, même ordre) ?

Si tes données sont dans 4 cellules Excel différentes, c'est peut-être plus simple pour toi de faire une formule ou une macro Excel : ça évitera la copier-coller permanent entre Excel et ton script.
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 18h23   #6
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 306
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 306
Points : 8 590
Points : 8 590
Vu la complexité de ton truc, vaut mieux écrire un vrai programme plutôt que de faire du sed ou du awk, à mon avis tu y arriveras mieux. On peut faire un script sed de la mort, mais tu ne pourras pas prendre en compte tous les cas possibles.
_Mac_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 20h58   #7
Membre Expert
 
Avatar de becket
 
Frédéric Brugmans
Informaticien multitâche
Inscription : février 2005
Messages : 661
Détails du profil
Informations personnelles :
Nom : Frédéric Brugmans

Informations professionnelles :
Activité : Informaticien multitâche

Informations forums :
Inscription : février 2005
Messages : 661
Points : 1 196
Points : 1 196
awk, est tout à fait prévu pour ce genre de choses
becket est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/02/2007, 23h56   #8
Invité de passage
 
Inscription : février 2007
Messages : 3
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2007
Messages : 3
Points : 0
Points : 0
Merci _Mac_ mais malheureusement, la grille Excel est construite n'importe comment. Si je savais me servir de Macros, je pense que j'aurais quand même du mal.
Je trouve ce principe de Grep fantastique et je suis certain qu'avec un peu de patience on peut "nettoyer" un maximum de données. Il s'agit en effet de remplacer des mots assez récurents (Color -› Couleur) avec des construction de phrase identiques.

Le plus difficile pour moi est par exemple de pouvoir isoler les derniers mots de la phrase (VM, DRA, THR, CRIM) et de les "avancer". Je vais bidouiller, mais c'est pas très propre.

Pour info, ça donne ceci pour l'instant (un retour à la ligne pour les isoler et je les avancerais dans un 2e temps) :

Rechercher : Remplacer par : Je poursuis mes équations… Merci à tous pour vos remarques !

À bientôt
(·'v '·)

Zbouboy
zbouboy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h01.


 
 
 
 
Partenaires

Hébergement Web