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 :

Passer la valeur d'une variable en paramètre d'une commande externe


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2006
    Messages : 14
    Par défaut Passer la valeur d'une variable en paramètre d'une commande externe
    Bonjour à toutes et à tous,

    Je suis en train d'apprendre le scripting et Pyhton. Pour mon travail, j'ai besoin de créer un script qui exécute un scan de plages d'adresses IP en exécutant Nmap.

    Je souhaite que le script demande à l'utilisateur de saisir la plage IP à scanner et que nmap s'exécute en prenant en compte la valeur saisie par l'utilisateur. Au delà de ce besoin immédiat, j'aimerais apprendre à passer un paramètre à une commande externe.

    Voilà ce que j'ai écrit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    # Cette première partie sert à récupérer la valeur de la variable. 
    print("Quelle est la plage IP à scanner ? ")
    network = input()
    # Print pour vérifier la valeur saisie
    print(network)
     
    # Cette ligne fonctionne très bien seule mais j'aimerais passer la valeur de network (récupérée avant) à une commande de ce type. 
    resultat = os.system('nmap -sP 192.168.9.1-252 > /home/scan/resultat.txt')
    Je n'arrive pas à trouver de solution.

    Je vous remercie par avance.

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Bonjour,

    Il y a des modules qui permettent d'éviter les appels à des commandes externes du système.

    Je vous propose de regarder du côté de scapy !

  3. #3
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2006
    Messages : 14
    Par défaut
    Citation Envoyé par fred1599 Voir le message
    Bonjour,

    Il y a des modules qui permettent d'éviter les appels à des commandes externes du système.

    Je vous propose de regarder du côté de scapy !

    Je vous remercie. Je vais regarder cet outil.

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    'nmap -sP 192.168.9.1-252 > ...' est juste une chaîne de caractères.
    Les chaines de caractères sont des objets de base du langage, n'importe quel tuto vous montrerait quelles sont les opérations qu'on peut faire notamment la concaténation de chaines.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre averti
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Septembre 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2006
    Messages : 14
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    'nmap -sP 192.168.9.1-252 > ...' est juste une chaîne de caractères.
    Les chaines de caractères sont des objets de base du langage, n'importe quel tuto vous montrerait quelles sont les opérations qu'on peut faire notamment la concaténation de chaines.

    - W
    J'avais déjà essayé mais je m'y prenais mal pour concaténer la valeur avec les chaînes et j'obtenais des erreurs qui me faisaient penser que l'exécution d'une commande externe changeait la façon de faire.

    Cette forme fonctionne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    print("Quelle est la plage IP à scanner ? ")
    network = input()
    print(network)
    resultat = os.system('nmap -sP ' + network + '> /home/scan/resultat.txt')
    Je vous remercie pour votre aide.

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

Discussions similaires

  1. Passer la valeur d'une variable JS à du XSL
    Par Sophie_62 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/07/2013, 11h18
  2. Passer uen valeur d'une variable sur plusieurs Form !
    Par Naografix dans le forum VB.NET
    Réponses: 8
    Dernier message: 22/11/2012, 14h25
  3. passer la valeur d'une variable dans un URL
    Par hishwest dans le forum ASP.NET
    Réponses: 0
    Dernier message: 10/01/2012, 00h18
  4. Réponses: 1
    Dernier message: 01/12/2010, 23h48
  5. Réponses: 4
    Dernier message: 17/09/2009, 13h09

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