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

Scripts/Batch Discussion :

Equivalent Windows pour ps -ef


Sujet :

Scripts/Batch

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 200
    Points : 65
    Points
    65
    Par défaut Equivalent Windows pour ps -ef
    Bonjour

    N'ayant que peu d experience dans le script windows je me demandais si il y avait un equivalent à la commande unix

    ps -ef | grep oracle

    tout aussi simple et qui me permettrait donc d'obtenir la liste des services oracle ou plus exactement la liste des bases présentes sur le serveur le but étant de faire un script allant regarder la liste des services pour recuperer les SID et ainsi se connecter sur les bases

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2008
    Messages : 240
    Points : 247
    Points
    247
    Par défaut
    Bonjour

    fais une recherche sur tasklist /? peut être ça liste tous les processus en cours du PC.

    Notamment tasklist /svc

  3. #3
    Membre averti

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Points : 387
    Points
    387
    Billets dans le blog
    1
    Par défaut
    tasklist est l'equivalent de PS. Maintenant, si tu cherche côté service uniquement, tu as des utilitaires plus fin comme net start mais surtout sc qui te permet d'interroger l'etat de chaque service. J'ajoute enfin que si Ps et top te manque, il existe, cherche dans les unix utils ou du côté de sysinternals.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Février 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 252
    Points : 124
    Points
    124
    Par défaut
    Si tu t'intéresse aux services > cmd > sc /?

    Si tu t'intéresse aux processus > cmd > tasklist /?


  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2008
    Messages : 240
    Points : 247
    Points
    247
    Par défaut
    tasklist /svc permet de lister les services avec leurs processus..

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 200
    Points : 65
    Points
    65
    Par défaut
    Bon j'ai pas mal bidouillé

    En oracle windows , le service associé a une base est OracleService<sid>
    où Sid = Nom de ma base

    Mon but , recupérer ce SID pour l'utiliser dans un script, Mon script regarderait la liste des services récupèrerait le SID, et se connecterait a cette base pour faire une operation
    L avantage : Un script par serveur et par type d'opération au lieu d'un script par serveur par type d'opération ET PAR BASE

    Bref ma bidouille avec vos conseils (merci beaucoup d'ailleurs)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=1 delims= " %%i in ('tasklist ^| findstr /i /c:"OracleService"') do echo %%i
    Devrait (je ne peux tester a l heure actuelle) me donner

    OracleServiceMABASE
    OracleServiceTABASE
    OracleServiceSABASE

    La question devient comment parser ce "mot" pour n'obtenir que la partie du mot contenant le nom de ma base ?

  7. #7
    Membre averti

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Points : 387
    Points
    387
    Billets dans le blog
    1
    Par défaut
    Solution 1 : AWK te permet le parsage par morceau (for, c'est uniquement un caractère)
    Solution 2 : Dans ta boucle actuelle, tu utilise l'opérateur interne de substitution du batch pour garder ce qui t'intérèsse (set MaVar=kiki& set Mavar=%MaVar:i=%, echo Mavar, te donnera kk comme résultat).

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2009
    Messages
    200
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 200
    Points : 65
    Points
    65
    Par défaut
    J'ai touché la solution l'espace d'une seconde

    Mon code est donc devenu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    for /f "tokens=3 delims= " %%i in ('tasklist /svc ^| findstr ORACLESERVICE') do (
    echo %%i
    set Mavar=%%ï
    set Mavar=%Mavar:ORACLESERVICE=%
    echo %Mavar%
    )
    Ma boucle a 2 iterations (car 2 services)
    1ere iteration Valeur de i : ORACLESERVICEMABASE
    2e iteration Valeur de i : ORACLESERVICEMABASE2

    Et c'est la où tout se complique

    J execute le script 2 fois de suite

    1ere Itération Valeur de Mavar : OracleService=
    2e Itération Valeur de Mavar : OracleService=

    A la seconde execution
    1ere Itération Valeur de Mavar : =
    2e Itération Valeur de Mavar : =

    Le pire c est que j ai testé ton exemple avec kiki donnant kk et cela fonctionne parfaitement

    il semble garder en memoire les valeurs des executions précédentes et ne tient pas compte des "set"
    De plus dans le boucle la suppression des OracleService semble fonctionner à l'inverse

    Comprends plus

  9. #9
    Membre averti

    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Décembre 2003
    Messages
    333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2003
    Messages : 333
    Points : 387
    Points
    387
    Billets dans le blog
    1
    Par défaut
    Yep, attention, dans certaine instruction du type for, le refraichissement des variables deconnes, il faut passer par la commande setlocal ENABLEDELAYEDEXPANSION et utiliser des variables avec la syntaxe !alpha! au lieu de %alpha%.Personnellement, je ne travaille plus que comme ça.

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

Discussions similaires

  1. Equivalent windows pour ps -ef
    Par Guigsounet dans le forum Interfaces de programmation
    Réponses: 3
    Dernier message: 16/04/2010, 14h01
  2. Equivalent window.stop() pour IE
    Par calitom dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 27/10/2009, 16h25
  3. Equivalent de Windows pour gérer un site
    Par manu f dans le forum Linux
    Réponses: 2
    Dernier message: 04/05/2009, 18h27
  4. Equivalent TOAD pour Informix (client sous windows)
    Par scofield dans le forum Informix
    Réponses: 8
    Dernier message: 29/12/2008, 16h46
  5. Equivalent des fonctions Windows pour WinCE
    Par bilel benhalima dans le forum Windows
    Réponses: 3
    Dernier message: 01/04/2008, 00h17

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