Script de détection automatique des vaisseaux spatiaux

PythonBeginner
Pratiquer maintenant

Introduction

Dans ce projet, vous allez apprendre à créer un script automatisé qui peut détecter l'utilisation de disque du système actuel. Ce script est conçu pour être utilisé par l'ingénieur de maintenance des vaisseaux spatiaux de l'Empire Galactique pour s'assurer que les données de base du vaisseau sont normales avant le décollage.

👀 Aperçu

$ python auto_check_script.py
['20480', '131', '20348']

🎯 Tâches

Dans ce projet, vous allez apprendre :

  • Comment créer un script Python nommé flight_check.py qui peut détecter l'espace disque total, l'espace disque utilisé et l'espace disque non utilisé du système actuel.
  • Comment implémenter la fonction auto_check_script() dans le fichier auto_check_script.py pour exécuter le script flight_check.py et capturer sa sortie.
  • Comment tester la fonction auto_check_script() pour vous assurer qu'elle fonctionne correctement.

🏆 Réalisations

Après avoir terminé ce projet, vous serez capable de :

  • Comprendre comment utiliser Python et la bibliothèque os pour créer un script automatisé de détection de système.
  • Implémenter une fonction qui peut exécuter un script Python et capturer sa sortie.
  • Tester et vérifier la fonctionnalité d'un script automatisé.

Créer le fichier flight_check.py

Dans cette étape, vous allez apprendre à créer le fichier flight_check.py à l'aide de code Python.

  1. Ouvrez votre éditeur de texte et créez un nouveau fichier nommé flight_check.py.
  2. Dans le fichier flight_check.py, ajoutez le code suivant :
import shutil

def check_disk_usage():
    total, used, free = shutil.disk_usage("/")
    print(total // (2**20))  ## espace disque total
    print(used // (2**20))   ## espace disque utilisé
    print(free // (2**20))   ## espace disque non utilisé

if __name__ == "__main__":
    check_disk_usage()

Ce code définit une fonction check_disk_usage() qui utilise la méthode shutil.disk_usage("/") pour obtenir l'espace disque total, utilisé et libre sur le système d'exploitation actuel. La fonction imprime ensuite ces valeurs en unités de Mo.

Implémenter la fonction auto_check_script()

Dans cette étape, vous allez apprendre à implémenter la fonction auto_check_script() dans le fichier auto_check_script.py.

  1. Ouvrez le fichier auto_check_script.py situé dans le répertoire /home/labex/project.
  2. Dans la fonction auto_check_script(), ajoutez le code suivant :
import os

def auto_check_script():
    result = os.popen("python flight_check.py").read().splitlines()
    return result

if __name__ == "__main__":
    file = open("flight_check.py", "w")
    file.write(
        """
import shutil

def check_disk_usage():
    total, used, free = shutil.disk_usage("/")
    print(total // (2**20))  ## espace disque total
    print(used // (2**20))   ## espace disque utilisé
    print(free // (2**20))   ## espace disque non utilisé

if __name__ == "__main__":
    check_disk_usage()
    """
    )
    file.close()

    print(auto_check_script())

Ce code utilise la fonction os.popen() pour exécuter le script flight_check.py et capturer sa sortie. La sortie est ensuite divisée en une liste de lignes, qui est renvoyée par la fonction auto_check_script().

Tester la fonction auto_check_script()

Dans cette étape, vous allez tester la fonction auto_check_script() pour vous assurer qu'elle fonctionne correctement.

  1. Exécutez le fichier auto_check_script.py à l'aide de la commande suivante :
python auto_check_script.py

Cela devrait afficher l'espace disque total, utilisé et non utilisé en unités de Mo, comme ceci :

['20480', '131', '20348']
  1. Vérifiez que la sortie correspond à l'utilisation réelle du disque sur votre système.

Félicitations! Vous avez terminé le projet. La fonction auto_check_script() dans le fichier auto_check_script.py est maintenant prête à être utilisée par l'ingénieur de maintenance des vaisseaux spatiaux de l'Empire Galactique.

Résumé

Félicitations! Vous avez terminé ce projet. Vous pouvez pratiquer plus de laboratoires sur LabEx pour améliorer vos compétences.

✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer✨ Vérifier la solution et pratiquer