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

Windows Discussion :

récupérez et kill un processus


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 125
    Par défaut récupérez et kill un processus
    Bonjour ,
    voilà , j'ai une panoplie de commande windows pour récupérer tous les PID des processus en cour et tuer celui que je veux .

    Bref en gros j'utilise la commande :
    WMIC PROCESS get Caption,Processid

    ca me retourne à chaque ligne le nom du processus et le PID plus loin .
    processus 1 251
    processus 2 321

    etc ....
    Mon problème c'est que en shell windows je n'ai aucune idée de comment on fait pour récupérer par exemple l'avant dernier PID ( sous unix avec des commande telles que cat etc ... c'est bidon )

    Je pourrais récupérer le PID par rapport au nom du processus , mais j'ai plusieurs fois le même donc c'est impossible .

    Ma question c'est donc comment en shell récupérez les PID de l'avant dernière ligne .

    Par exemple compter les lignes , allez à l'avant derniere , et récupérer le premier mot après les espaces .

    SVP , impossible de trouver ça , donc si vous savez faire ...
    Merci.

  2. #2
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    Donc si je comprend bien, tu a une liste du processus, et tu veut récupérer le pid d'un proessus bien précis ?

    Avec la commande WMIC PROCESS get Caption,Processid je n'y arrive pas, dans une boucle for elle me renvoi une erreur.


    Mais je peut faire ca avec la commande tasklist:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=2 delims= " %%i in ('tasklist ^| findstr /i /c:"explorer"') do echo %%i
    La on récupére le PID de explorer

  3. #3
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 125
    Par défaut
    bon imaginons :
    Processus1 212
    ...
    Processus15 356
    WMencoder.exe 158
    WMencoder.exe 172


    Bah je voudrais le dernier WMencoder.exe pour pouvoir le kill plus tard .

  4. #4
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    Regarde j'ai éditer mon précédent message pendant que tu poster.


    Voici ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=2 delims= " %%i in ('tasklist ^| findstr /i /c:"WMencoder"') do echo %%i

  5. #5
    Membre chevronné Avatar de pascal.barbier
    Profil pro
    Inscrit en
    Août 2007
    Messages
    362
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Août 2007
    Messages : 362
    Par défaut
    Comment sais tu que l'avant-dernier est celui que tu veux tuer ? l'ordre des processus affichés est très volatile et dépend complètement du contexte. En clair si le caption est identique pour plusieurs processus, je ne vois pas comment les distinguer.
    As tu pensé à l'option CommandLine :
    WMIC PROCESS GET CommandLine, ProcessId

    OUPS, nos posts se sont croisés, ma remarque n'a plus d'intérêt

  6. #6
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 125
    Par défaut
    Bah WMIC rend les processus dans l'ordre chronologique .

    Oki , je test vos deux solutions tout de suite .

  7. #7
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    125
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 125
    Par défaut
    pour ma part ta ligne me renvoie : %%i inattendu ...

  8. #8
    Membre éprouvé
    Avatar de koKoTis
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 438
    Par défaut
    Citation Envoyé par milach Voir le message
    pour ma part ta ligne me renvoie : %%i inattendu ...
    Celle ci ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for /f "tokens=2 delims= " %%i in ('tasklist ^| findstr /i /c:"WMencoder"') do echo %%i
    Tu la entrer directement dans l'invite de commande ? ou tu la mi dans un batch ?

    Parce qu'il faut la mettre dans un batch

Discussions similaires

  1. Kill plusieurs processus
    Par cpalperou dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 15/09/2013, 11h11
  2. problème pour kill un processus
    Par azräel dans le forum VB.NET
    Réponses: 0
    Dernier message: 10/03/2009, 10h10
  3. verification existence processus et kill
    Par allanibu dans le forum Windows
    Réponses: 2
    Dernier message: 29/10/2008, 14h42
  4. Kill de processus
    Par darkwall_37 dans le forum Windows
    Réponses: 8
    Dernier message: 30/03/2008, 13h05
  5. [Virus Sasser] kill du processus Lsass.exe
    Par Maxoo dans le forum Sécurité
    Réponses: 17
    Dernier message: 03/10/2006, 19h40

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