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

Linux Discussion :

trier et classer sur un tableau


Sujet :

Linux

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Octobre 2011
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 9
    Par défaut trier et classer sur un tableau
    Bonjour.

    Quand je lance la script j'ai actuellement ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     ./test.ksh -s
    mois DTU_SUPP_LOT_TABLE_FORMAT. type de DT :  0
    mois BD0032. type de DT :  0
    mois BD0020. type de DT :  0
    mois DTR_MAJ_FORMAT_FACTURE. type de DT :  0
    mois 11 type de DT : DTI 11
    mois BD0043. type de DT :  0
    mois BD0023. type de DT :  0
    mois 11 type de DT : DTR 3
    mois BD0013. type de DT :  0
    mois BD0001. type de DT :  0
    mois DTR_DEVERROU_CPTE. type de DT :  0
    mois BD0062. type de DT :  0
    mois DTR_MAJ_STATUS_CPT. type de DT :  0
    le script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     $ vi ./test.ksh
    "./b1.ksh" 73 lines, 1340 characters
    #!/bin/ksh
    USAGE=${USAGE:-"mois=<mm> [filtre=<DTI|DTR>]"}
    fct_usage ()
    {
    echo "$USAGE "
    exit 1
    }
     
    # Selection des options sur la ligne de commande
    [ "$(echo "$1"|cut -c1-2)" != "-s" ] && echo "$(basename $0) -s[tart] $USAGE" && exit 1
    shift && while [ $# -gt 0 ]
     do
     [ $(echo $1|grep -c "=" ) = 0 ] && break
        eval   export $(echo $1|sed -e 's/=/="/' -e 's/$/"/')
        shift
     done
    [ -n "$debug" ] && PS4='$LINENO '${ps4:-'>'}' ' && set -x
     
    fct_trait ()
    {
    #echo traitement de $1
    zgrep "${lfiltre}_" $1 |awk ' $0 ~ "Lancement" {
    nb += 1
    print "___",$(NF)
    #ZZ[$(NF)]++
    #print $NF
     }
    END {
    if (nb != 0)
     {
    # for (k in ZZ )
    #  print k"a ete lance" ZZ[k] "fois"
     printf ("mois %s : Nombre de %s trouves %d \n","'${m}'","'${lfiltre}'",nb)
     }
     
     }'
    }
    filtre=${filtre:-"DTI DTR"}
     
     
    fct_mois ()
    {
     for m in $mois
     do
    for lfiltre in $filtre
      do
    #si mois courant  , on inclut la felog
    for k in $([ ! -n "$jour" ] && ls /toto/titi.${m}*) $([ $m = $(date '+%m') ] &&  echo $FE_LOG)
    #for k in $([ ! -n "$jour" ] && ls /toto/titi.${m}*) $([ $m = $(date) ] &&  echo $LOF_LOG)
     do
    fct_trait $k
       done
      done
     done
    }
     
    [ $# -eq 0 -a "$mois" = "" ] && jour=y
    [  -n "$jour"  ] && mois=$(date '+%m')
    #fct_mois
     
     
    fct_somme ()
    {
    fct_mois | awk '{
    tab["mois "$2" type de DT : "$6] += $8
    }
    END {
    for (k in tab)
     print k , tab[k]
    }'
    }
     
    fct_somme
    Je voudrais avoir comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    ./test.ksh -s
    mois 11 type de DT : DTI 11
    BD0032
    BD0020 
    BD0043. 
    BD0023. 
    BD0013. 
    BD0001. 
    BD006  
    DTU_SUPP_LOT_TABLE_FORMAT
    mois 11 type de DT : DTR 3
    DTR_DEVERROU_CPTE
    DTR_MAJ_FORMAT_FACTURE
    DTR_MAJ_STATUS_CPT
    Merci d'avance.
    Fichiers attachés Fichiers attachés
    • Type de fichier : txt DT.txt (10,0 Ko, 66 affichages)

Discussions similaires

  1. Références et pointeurs sur un tableau
    Par smag dans le forum C++
    Réponses: 2
    Dernier message: 01/03/2005, 20h29
  2. function sur un tableau
    Par bibi2607 dans le forum ASP
    Réponses: 9
    Dernier message: 17/02/2005, 09h54
  3. Réponses: 2
    Dernier message: 08/04/2004, 16h30
  4. Comment faire un Drag&Drop sur un tableau
    Par Stef.web dans le forum Composants VCL
    Réponses: 6
    Dernier message: 11/10/2003, 13h12
  5. [VBA-E] Dim dynamique sur un tableau
    Par Vince69 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 12/12/2002, 13h32

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