Aide sur la commande grep

Résolu
Bonjour,

J'aimerais retrouver a laide de la commande grep seulement toutes les infos used et soft pourriez vous m'aider à établir la commande merci
(juste le premier used et soft )
voila le fichier que je veut greper :

User used soft hard timeleft used soft hard
asahina -- 318 700 750 68 0 0
akemi -- 268 700 750 13 0 0
tomoharu -- 431 700 750 79 0 0
andounon -- 318 700 750 85 0 0
itou -- 246 700 750 46 0 0

donc le debut serait : repquota -a grep | ?????
Configuration: Windows XP
Firefox 1.5.0.12

8 réponses

  1. Modérateur
    A mon avis ceci devrait marcher :
    repquota -a | egrep "used|quota"

    Bonne chance
    0
    1. ta pas fait d'erreur de frappe la egrep connait pas . Deplus ici il me faut prendre seulement used et soft qui sont en gras sur mon message plus haut
      0
      1. Modérateur
        Salut,

        Je pense que ce que tu veux c'est plutôt :
        repquota -a | awk '{ print $2,$3}'
        ;-))
        0
        1. oui jipicy je pense que c'est sa sauf que apres reflexion j'aimerai tou grder sauf ce qui est en gras :

          NewKamui# repquota /dev/dsk/c0t3d0s5
          Block limits File limits
          User used soft hard timeleft used soft hard

          asahina -- 318 700 750 68 0 0
          akemi -- 268 700 750 13 0 0
          tomoharu -- 431 700 750 79 0 0
          andounon -- 318 700 750 85 0 0
          itou -- 246 700 750 46 0 0
          umeta -- 272 700 750 54 0 0
          urabe -- 365 700 750 93 0 0
          ootuki -- 275 700 750 46 0 0
          kakehata -- 191 700 750 42 0 0
          arai -- 199 700 750 16 0 0
          andousin -- 208 700 750 37 0 0
          ikawa -- 267 700 750 64 0 0
          mituhiko -- 303 700 750 54 0 0
          isigure -- 303 700 750 59 0 0

          block statistic :
          stat1 : 12


          aurait tu une idée
          0
          1. Modérateur
            N'étant pas un spécialiste de "awk", je ne sais pas comment sauter certaines lignes, par contre avec "sed", tu peux combiner :
            repquota /dev/dsk/c0t3d0s5 | sed -e '1,2d;/^$/,$d' | awk '{ print $2,$3 }'
            ;-))
            0
          2. Modérateur
            @jipicy
            repquota /dev/dsk/c0t3d0s5 | awk ' (NR==3),/^$/ { print $2,$3 }'
            ;-))
            0
        2. maintenant comme je veu tout garder je vais faire sa :

          cat rep | cut -f1
          Block limits File limits
          User used soft hard timeleft used soft hard
          asahina -- 318 700 750 68 0 0
          akemi -- 268 700 750 13 0 0
          tomoharu -- 431 700 750 79 0 0
          andounon -- 318 700 750 85 0 0
          itou -- 246 700 750 46 0 0
          umeta -- 272 700 750 54 0 0
          urabe -- 365 700 750 93 0 0
          ootuki -- 275 700 750 46 0 0
          kakehata -- 191 700 750 42 0 0
          arai -- 199 700 750 16 0 0
          andousin -- 208 700 750 37 0 0
          ikawa -- 267 700 750 64 0 0
          mituhiko -- 303 700 750 54 0 0
          isigure -- 303 700 750 59 0 0
          
          block statistique :
          stat : 7


          donc la j'ai tout sauf que j'aimerai enlever se que je met en gras
          0
          1. Modérateur
            Si tu n'as pas egrep c'est qu'il n'est pas installé mais tu peux le faire avec un grep normal. Par rapport à <2> et <3> Exemple :
            (mando@aldur) (~) $ /sbin/route -n
            Table de routage IP du noyau
            Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface
            192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth3
            0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth3
            (mando@aldur) (~) $ /sbin/route -n | grep "Destination\|Table"
            Table de routage IP du noyau
            Destination     Passerelle      Genmask         Indic Metric Ref    Use Iface

            Toute ligne contenant Destination ou Table est conservée. Il suffit dans ton cas de faire pareil avec used et soft et repquota si j'ai bien compris ce que tu voulais faire.

            Bonne chance
            0
            1. Modérateur
              Salut,

              Si tu n'as pas egrep c'est qu'il n'est pas installé
              Il doit pouvoir utiliser "grep -E", non ?
              0
          2. Modérateur
            Mettre un \ devant le | économise un caractère :-)
            0
            1. Bon avec Jipicy on a étudié une autre commande qui est sed et qui a resolu mon probleme vois ci le resultat

              sed -e '1,/-\+/d;/^$/,$d' rep //rep = fichier
              
              root -- 157696 0 0 12 0 0
              uucp -- 40 0 0 76 0 0
              fradin -- 2304352 2500000 2550000 12465 50000 55000
              
              0