Commande grep ou egrep solution [Résolu/Fermé]

Signaler
Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
-
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
-
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 | ?????

9 réponses

Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
843
Ce n'est pas grep qu'il faut utiliser pour faire ca, mais cut ;)

Grep permet de sélectionner les lignes qui reconnaissent un certain pattern, mais pas de couper les lignes en questions.

Voici le man de la commande cut : man cut
Quelques exemples d'utilisation : exemples

Je pense que la commande pour toi est la suivante :
repquorta - a | cut -c2-3,6-7

Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
16
Ta comande ne marche pas car je ne prend enfaite que les lettre et nom les champ

J'ai decidé de changer de plan du coup maintenant je garde tout sauf se 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 statistique :
stat : 7


Comment faire avec cut
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
843
Faut savoir, tu me dis :
eulement toutes les infos used et soft


C'est à dire les colonnes "used" et "soft" non ?
Maintenant tu ne souhaite prendre que les lettres, mais quelles lettres ? Tu ne peux pas être plus précis.
Pour ce qui est de l'utilisation de cut, les pages que je t'ai donné devrait suffir... il faut aussi apprendre tu sais.

Sinon tu me dis : la commande ne marche pas, peux-tu donner le message d'erreur exactement ? Ou le résultat que ca donne car je ne peux pas tester chez moi les commandes.
Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
16
deja nous somme sur un forum pour discutter et non pour guelé mon ami donc du calme merci.

1 . J'ai tester ta commande elle ne me donne comme je te dit en dessus que des lettre donc pour les colonne il fallait utiliser -f et non -c

2. pour cela j'ai decider enfaite de garder tout mise a part cce qui est en gras voir en dessous :

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


Pour cela je demande comment faire pour eliminer les ligne en gras

et tout cela gentillement
Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
16
avec la commande la sa donne sa :

cat rep | cut -c1
U
a
a
t
a
i
u
u
o
k
a
a
i
m
i


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 har
d
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
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
843
Comment geuler puisqu'il ne s'agit que de lettres ? (;) )
Oui je te l'accorde je me suis un peu emporté, toutes mes excuses.

Si tu veux couper les deux premieres et dernieres lignes de ta sortie standard je crois que la commande tail peut t'aider (pas sur)

Sinon tu as toujours une solution "crade" avec grep :
repquota chemin | grep -E -v "^(Block limits|User used|block statistique|stat )"


Je ne suis plsu tres sur de la syntaxe donc vérifie dans le man grep.
Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
16
oki merci c gentil je vais tester
Messages postés
343
Date d'inscription
vendredi 14 décembre 2007
Statut
Membre
Dernière intervention
16 août 2011
16
J'ai changer de commmande voici la reponse a mes question :

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


Merci de ton aide kij_82
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
843
La commande sed c'est exact !
Réponse sur l'autre post.