IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

la commande grep *pl unix


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Août 2010
    Messages
    67
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2010
    Messages : 67
    Par défaut la commande grep *pl unix
    bonjour
    j'ai une question:
    Quelle est la différence d'exécution entre les deux commandes suivantes ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls l fichier; grep *pl fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls l fichier; grep ".*pl" fichier
    merci

  2. #2
    Expert confirmé Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Par défaut
    man regex

    regarde le role de . de * et du reste ... c'est pas si complexe ...
    le truc de base :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    . (dot) - a single character.
    ? - the preceding character matches 0 or 1 times only.
    * - the preceding character matches 0 or more times.
    + - the preceding character matches 1 or more times.
    {n} - the preceding character matches exactly n times.
    {n,m} - the preceding character matches at least n times and not more than m times.
    [agd] - the character is one of those included within the square brackets.
    [^agd] - the character is not one of those included within the square brackets.
    [c-f] - the dash within the square brackets operates as a range. In this case it means either the letters c, d, e or f.
    () - allows us to group several characters to behave as one.
    | (pipe symbol) - the logical OR operation.
    ^ - matches the beginning of the line.
    $ - matches the end of the line.

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Août 2010
    Messages
    67
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2010
    Messages : 67
    Par défaut
    merci monsieur frp31
    je souhaite savoir la différence entre
    grep *pl fichier
    et
    grep ".*pl" fichier
    merci

  4. #4
    Expert confirmé Avatar de disedorgue
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Décembre 2012
    Messages
    4 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2012
    Messages : 4 348
    Par défaut
    Bonjour,

    Dans le premier cas, comme * n'est pas protégé par des guillemets, ton shell va remplacer le *pl par tous les fichiers du répertoire courant qui sont représenté par ce pattern.
    Par exemple si dans ton répertoire tu as les fichiers suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    toto
    foo.pl
    bar.pl
    bob
    avec ta ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls l fichier; grep *pl fichier
    c'est comme si tu avais saisi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ls l fichier; grep bar.pl foo.pl fichier
    par contre si tu n'as pas de fichier représentatif du pattern, là tu conserveras bien *pl comme si tu l'avais mis entre guillemet (ton deuxième cas).

Discussions similaires

  1. commande java sous unix
    Par root76 dans le forum Langage
    Réponses: 4
    Dernier message: 01/03/2007, 11h43
  2. Le temps que la commande "grep" en shell prend
    Par Pauli dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 25/12/2006, 19h59
  3. Commande d'impression unix
    Par ljoly dans le forum Administration système
    Réponses: 12
    Dernier message: 04/11/2006, 16h53
  4. Commande Grep
    Par zalett dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 20/03/2006, 23h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo