Aide pour un script shell

karouma80 -  
mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

je suis débutante en programmation shell,et je doit préparé un script qui extrait des données à partir d'un fichier (fichier d'appels telephonique), qui commence par 07,05,02 et qu'il doit être plus de 50 appels vers ces opérateur(07,05...),comment je doit résonné.
merci d'avance

2 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    grep des valeurs recherchées vers un pipe
    Puis un tri avec sort et un comptage avec uniq et ses options qui vont bien.
    Et à nouveau une recherche sur les valeurs supérieures à 50 avec l'outil le plus approprié en fonction du traitement à faire derrière (grep, awk, sed, perl, etc.)
    0
  2. mamiemando Messages postés 33228 Date d'inscription   Statut Modérateur Dernière intervention   7 944
     
    Personnellement je n'ai pas très bien compris ce que tu voulais faire ("et qu'il doit être plus de 50 appels vers ces opérateur(07,05...)" == ?), mais je peux d'ores et déjà te dire que le script dépend partiellement de la structure de ton fichier.

    Il faudrait donc nous en donner un extrait (quitte à anonymiser les données).

    Dans l'idée tu peux utiliser des commandes comme grep ou egrep pour ne conserver que les lignes qui vérifient certains critère. Tu peux aussi regarder du côté de awk.

    Par exemple supposons que le fichier soit construit comme cela :

    0701010101 toto
    0501010101 tata
    0101001010 titi


    Alors tu peux conserver les lignes commençant par 02, 05, 07 comme cela :

    egrep "^(02|05|07)" fichier.txt


    Pour plus de détails sur les commandes dont je parle :

    man egrep
    man grep
    man awk


    Bonne chance
    0