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

Python Discussion :

Definir l'OS de l'utilisateur [Fait]


Sujet :

Python

  1. #1
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut Definir l'OS de l'utilisateur
    Salut,

    J'aimerai connaitre l'os de l'utilisateur de mon script.
    pour ça, j'ai bien pensé au module OS, mais je ne trouve pas ce que je cherche (je suis nul en anglais).

    quelqun pourrait il m'aider svp?

  2. #2
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Tu as le module platform qui peut te donner des infos
    par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    platform.system()
    platform.uname()
    le module sys aussi:

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    118
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2004
    Messages : 118
    Par défaut
    et aussi le module os
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import os
    os.uname()
    ('Linux', 'hostname', '2.6.12-10-386', '#1 Mon Feb 13 12:13:15 UTC 2006', 'i686')

  4. #4
    Expert confirmé
    Avatar de Guigui_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 864
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2002
    Messages : 1 864
    Par défaut
    Citation Envoyé par Onarap
    et aussi le module os
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    import os
    os.uname()
    ('Linux', 'hostname', '2.6.12-10-386', '#1 Mon Feb 13 12:13:15 UTC 2006', 'i686')
    sauf que cette fonction n'a pas l'air d'être disponible sous windows.

  5. #5
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    Merci de vos réponses mais pour windows ça renvoie juste win32

    je dois faire la distinction entre:
    • Win 95/98/Me
      Win NT/2000
      Win XP
      Et linux.

  6. #6
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut os
    tu peu utiliser un bat externe :

    le bat (test.bat) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    echo %os% > C:/test.txt
    ca va te creer le fichier test.txt avec1 seule ligne, le nom de l'os
    (chez moi Windows_NT)

    apres tu utilise python pour lire ce fichier, et c bon.
    evidemment ca fait 1 nvo fichier a creer mais peut etre que tu peu le faire dans python :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    test = open.file('c:/test.bat','a')
    test.write('echo %os% > c:/os.txt')
    test.close
    La t'a cree 1 fichier bat ki ecrit ds 1 fichier txt le nom de l'os.
    apres tu fait le code pr lancer le bat, et si tu veu rester propre, tu supprime ces deux fichiers apres.

    corrigez moi si y'a des erreurs de code.

  7. #7
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut
    PS : pr Linux, je ss perplexe ^^ vu que c'est des commandes windows...

  8. #8
    Membre émérite Avatar de reggae
    Profil pro
    Inscrit en
    Août 2005
    Messages
    773
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2005
    Messages : 773
    Par défaut
    Bizarre, je suis sous XP et ta commande me renvoie:
    Widows_NT...

  9. #9
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut os
    bin we moi aussi, c'est chelou mais je pense que ils doivent etre construit sur la meme base... faudrais voir avec 98

  10. #10
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut
    windows est schyzophrene

  11. #11
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    salut,

    Un tit mélange de vos deux solutions
    j'utilise la premiere, si le pc me renvoyais linux j'avais mon os et s'il me renvoie windows je fais le fichiet bat (par contre il faudrait voir s'il fonctionne bien ^^)

    merci de vos reponses en tout vas

  12. #12
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut
    dis le nous si ca marche.

  13. #13
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    Il me sors un "windows NT'.
    je vais aller à la peche au info pour faire un bat plus complet

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 52
    Par défaut
    Salut,

    Petites question :
    Tu peux pas tester l'existence de fichier propre à chaque os ?

    Par exemple en linux, tu peux regarder le fichier /proc/version qui te donne toutes les infos
    Sous windows, par contre, je ne sais pas...

    Mais c'est peut être une piste à explorer

    See++

  15. #15
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    Salut,

    Non c'est pas gerable, car il faudrais des fichiers uniques à chaque type de systeme windows et il faudrais encore que l'utilisateur ne l'est ai pas suprimmer.

    j'ai commnancer ceci (il doit encore il y avoir des fautes, mais là j'ai cours je dois y aller)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    from os import *
    from sys import *
     
    def systeme():
        os = platform
        if os == 'win32':
            #On crée un fichier bat
            win_version = open.file('version.bat','a')
            win_version.write('ver > windows_version.os')
            win_version.close
     
            #On lance le fichier bat
            system('version.bat')
     
            #On recupere la version de windows
            win_version = open.file('windows_version.os', 'r')
     
            #On suprimme les deux fichiers
            remove('version.bat')
            remove('windows_version.os')
     
            os = win_version
            return os

  16. #16
    Membre habitué
    Inscrit en
    Février 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 12
    Par défaut
    bien joué, mais pr linux?

  17. #17
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    platform renvoie linux (linux 2 pour moi).
    Maintenant, je peux aussi faire un tit code pour faire ressortir la version du noyau et la distribution, mais c'est simple à faire (et j'en ai pas besoins ^^)

  18. #18
    Membre émérite Avatar de sloshy
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Janvier 2005
    Messages
    728
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Janvier 2005
    Messages : 728
    Par défaut
    re,
    j'ai trouvé ça dans la doc


    Citation Envoyé par ressource python
    getwindowsversion( )
    Return a tuple containing five components, describing the Windows version currently running. The elements are major, minor, build, platform, and text. text contains a string while all other values are integers.

    platform may be one of the following values:

    Constant Platform
    VER_PLATFORM_WIN32s Win32s on Windows 3.1
    VER_PLATFORM_WIN32_WINDOWS Windows 95/98/ME
    VER_PLATFORM_WIN32_NT Windows NT/2000/XP
    VER_PLATFORM_WIN32_CE Windows CE

    This function wraps the Win32 GetVersionEx() function; see the Microsoft documentation for more information about these fields.

    Availability: Windows. New in version 2.3.
    => http://docs.python.org/lib/module-sys.html

    => FAQ: http://python.developpez.com/faq/?pa...foSystemPython

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

Discussions similaires

  1. [JAVA] Definir l'utilisateur
    Par nezdeboeuf62 dans le forum Administration système
    Réponses: 1
    Dernier message: 13/01/2009, 14h32
  2. Réponses: 2
    Dernier message: 26/02/2008, 16h54
  3. Réponses: 20
    Dernier message: 05/07/2006, 20h03
  4. Réponses: 8
    Dernier message: 05/06/2002, 11h55
  5. [Kylix] Sauvegarde de donnée utilisateur....
    Par Eclypse dans le forum EDI
    Réponses: 1
    Dernier message: 11/05/2002, 17h21

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