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 :

Script ksh - Valeur maximal d'un PID


Sujet :

Linux

  1. #1
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 66
    Points : 43
    Points
    43
    Par défaut Script ksh - Valeur maximal d'un PID
    Salut tout le monde,
    Une question peut être toute bête...
    voilà, je dois analyser un fichier qui contient le status d'un process. Entre autre je dois analyser ce fichier pour trouver une ligne du type:
    Je sais que si li n° pid=0 alors mon process est absent, sinon, c'est qu'il est la.
    j'ai donc ecrit un script ksh qui fait ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    egrep "(Pid) *: *([1-99999])" $MO_FICHIER
    Maintenant, j'aimerais savoir quel est la valeur maximale d'un PID (pour n'importe quel OS unix : linux, aix, hp-ux...).

    Aussi, si qq a une meilleur solution de pattern pour mon egrep, c'est volontier... (du genre, toute les chiffres strictement supérieur a 0...je sais pas si c'est possible ça...)

    Voili voilou
    Merci de votre aide.

    Delphine

  2. #2
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 49
    Points : 52
    Points
    52
    Par défaut
    /proc/sys/kernel/pid_max
    [code:1]man -k probleme[/code:1]
    :code:

  3. #3
    Membre expérimenté
    Avatar de nyal
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    622
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 622
    Points : 1 428
    Points
    1 428
    Par défaut
    Bonjour,

    Citation Envoyé par Kartofel
    /proc/sys/kernel/pid_max
    Ce fichier n'est pas toujours present. Par exemple, je ne l'ai pas.
    Mais tu peux regarder dans les include (.h). Un pid est un int la plupart du temps.

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 49
    Points : 52
    Points
    52
    Par défaut
    J'ai mis ce fichier sachant qu'il serait absent sur un UNIX non-linux mais c'est le plus portable entre des Linux. Il est sûre que le mieux est de consulter les sources pour trouver mais c'est loin d'être convivial.
    [code:1]man -k probleme[/code:1]
    :code:

  5. #5
    Membre averti

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    289
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 289
    Points : 342
    Points
    342
    Par défaut
    Pour le pid max sous linux, sauf erreur de ma part, c'est dans threads.h.

    Pour en revenir à ton expression régulière, un filtre comme "[0-9]+" (ou une variante) ne serait-il pas suffisant ?

  6. #6
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 66
    Points : 43
    Points
    43
    Par défaut
    Salut,

    Le filtre [0-9]+ marche, mais je voulais faire un filtre du style:
    "Tous les chiffre strictement supérieur a 0"

    Moi j'ai trouvé que ça : ( [1-9999] ) (ce qui est pas très juste, vu que je connais pas la valeur maximale d'un process).

    Le filtre que tu me propose va prendre forcement le 0, or, je veux tester justement si le pid=0 (process absent) ou un n°de process (process présent)

    Merci pour toutes ces infos.
    Si qq a une idée de filtre encore...c'est pas de refus

    Delphine

  7. #7
    Membre averti

    Profil pro
    Inscrit en
    Avril 2004
    Messages
    289
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 289
    Points : 342
    Points
    342
    Par défaut
    Alors un truc comme [1-9][0-9]* ?

    Et au fait, un chiffre c'est le symbole graphique "0", ... "9", le nombre c'est l'objet mathématique, la valeur représentée (enfin, là je fais très court, vu que y en a qui dissertent sur des dizaines de pages sur le sujet... cf. un récent et très intéressant hors-série de Pour la Science)

  8. #8
    Membre du Club
    Inscrit en
    Décembre 2003
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 66
    Points : 43
    Points
    43
    Par défaut
    Salut Alveric,

    Ca marche du tonnerre ton filtre !!!
    Merci merci beaucoup.

    Delphine.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Menu avec un script ksh ?
    Par insupien dans le forum Linux
    Réponses: 2
    Dernier message: 06/07/2006, 13h05
  2. Réponses: 3
    Dernier message: 10/02/2006, 09h57
  3. [Sqlplus ] Appel depuis script KSH
    Par kasiop dans le forum Oracle
    Réponses: 2
    Dernier message: 27/01/2006, 10h25
  4. Script Ksh
    Par tonymontana4192 dans le forum Linux
    Réponses: 6
    Dernier message: 20/12/2005, 10h51
  5. Execution d'un script ksh distant
    Par jool dans le forum C++
    Réponses: 2
    Dernier message: 18/03/2005, 10h10

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