Stat de fichier python

Stat de fichier python
Le module OS de Python propose un ensemble de méthodes qui permettent aux utilisateurs d'interagir avec le système d'exploitation de leur ordinateur. Le module OS est classé avec les autres modules d'utilité de base de Python. Ce module offre une approche portable pour utiliser des fonctionnalités qui dépendent du système d'exploitation. Un tel exemple est le module stat () de Python qui est utilisé pour acquérir toutes les informations sur un fichier ou un dossier. Il fonctionne en effectuant un appel système statistique sur le chemin spécifié. Il donne une variété d'informations comme le numéro d'inode, la taille, le nombre de liens durs, le temps où il a été créé et mis à jour, et beaucoup plus. Le module Stat comprend des constantes et des méthodes pour interpréter la sortie du système d'exploitation. stat (), os. fstat (), et os. Fonctions fstat ().

La syntaxe de la méthode STAT est la suivante:

>> OS.État (chemin)

Ici, le «chemin» est complet. Un chemin qui peut être représenté comme un texte ou un objet d'octets pour lequel nous voulons obtenir les informations ou le statut.

Cette fonction renvoie un objet "stat_result" de type "OS.stat_result ”qui décrit le statut du chemin. L'objet «stat_result» renvoyé contient les propriétés suivantes:

  • ST_MODE: il représente le type de fichier et les bits de mode de fichier (autorisation).
  • ST_INO: Sur Unix, il représente le numéro inode. Mais sur Windows, il représente l'index de fichier.
  • ST_DEV: Il s'agit de l'identification de l'appareil pour lequel ce fichier est stocké.
  • Le nombre de liens durs est représenté par ST_NLINK.
  • ST_UID: Il s'agit de l'identité utilisateur du propriétaire de fichier.
  • ST_GID: Il s'agit de l'identité du groupe du propriétaire du fichier.
  • ST_SIZE: Cette variable reflète la taille du fichier en octets.
  • ST_ATIME: C'est le temps d'accès le plus récent. Il est mesuré en quelques secondes.
  • ST_Mtime: C'est le moment de la modification du contenu la plus récente. Il est mesuré en quelques secondes.
  • ST_CTIME: Sur Unix, il reflète le temps de la modification des métadonnées la plus récente. Tandis que sur les fenêtres, il représente l'heure de la création. Il est mesuré en quelques secondes.
  • ST_ATIME NS: IE ST_ATIME, sauf que le temps est donné comme un entier dans les nanosecondes.
  • ST_Mtime NS: Identique à ST_Mtime, mais le temps est donné comme un entier dans les nanosecondes.
  • ST_CTIME NS: Identique à St Ctime, mais le temps est donné comme un entier dans les nanosecondes.
  • ST_BLOCKS: Le nombre de blocs de 512 octets alloués au fichier.
  • Si l'appareil est un inode, il est représenté par ST_RDEV.
  • ST_FLAGS: il représente les indicateurs définis par l'utilisateur du fichier.

Remarque: certains attributs sont dépendants de la plate-forme et peuvent ne pas être disponibles.
Dans cet article, nous allons jeter un œil à un code Python ainsi qu'à quelques exemples du module stat () que Python offre.

Exemple 1:

C'est un exemple très basique dans lequel nous allons spécifier un fichier au système d'exploitation.Méthode stat () pour obtenir l'état du fichier ou tous les détails connexes.V

Dans la première ligne, le chemin d'un fichier est stocké dans la variable nommée «file_path». Ensuite, le système d'exploitation.La méthode stat () est appelée avec le chemin de fichier comme paramètre. Il renvoie l'état de l'objet fichier_path et est stocké dans la nouvelle variable nommée «Stats». L'état ou les détails du fichier récupéré est ensuite démontré du côté de la sortie à l'aide de la directive de publication, comme on le voit dans l'extrait suivant:

Exemple 2:

Nous pouvons voir dans l'exemple précédent que le système d'exploitation.stat () renvoie toutes les informations en une seule fois. Cela peut parfois être très lourd et déroutant, surtout lorsque nous avons juste besoin d'informations spécifiques uniquement. Dans cet exemple, seuls les attributs limités du fichier sont affichés.

Dans le code fourni, trois modules sont importés dans Python - OS, STAT et Time. Dans la ligne suivante, le système d'exploitation.La méthode stat () est appelée avec un chemin de fichier dans son paramètre. Il crée un objet "statts_result" qui fournit l'état du fichier contenant toutes les informations et attributs de ce fichier. Ensuite, 3 attributs sont appelés avec le format de «Time.ctime ”qui sont affichés à la borne de sortie à l'aide de la commande d'impression. Premièrement, «ST_ATIME» est affiché. Ensuite, "st_mtime". Et enfin, «ST_CTIME» comme indiqué dans la capture d'écran suivante:

Exemple 3:

De même, dans cet exemple, l'attribut ST_MODE du fichier s'affiche qui désigne le type de fichier et les bits de mode du fichier (autorisation).

Dans la première étape, le module OS et le module Stat sont importés dans Python. Dans la ligne suivante, un chemin de fichier est transmis au système d'exploitation.Méthode stat () qui renvoie l'état du fichier, qui comprend tous les détails du fichier. Ceci est stocké dans la variable nommée «S». Pour afficher les bits de mode, «STAT.ST_MODE "est appelé pour objets (qui contiennent l'état du système d'exploitation du fichier). Cela revient les bits du mode du fichier, qui sont ensuite démontrés en utilisant la directive publique au nœud de sortie comme indiqué dans l'instantané suivant:

Exemple 4:

Une autre méthode très utile de STAT consiste à renvoyer la taille du fichier. Voyons comment saisir la longueur du fichier dans Python en utilisant le package STAT OS.

Dans Python, la première étape consiste à acquérir les modules OS et STAT. Suivant cela, un chemin de fichier est transmis aux caractéristiques du système d'exploitation.Méthode stat () qui renvoie l'état de ce fichier avec tous ses attributs. Ceci est stocké dans la variable nommée «Statistiques». Pour obtenir la taille du fichier, seulement la statistique.ST_SIZE est appelé pour l'objet «Stats» et est stocké dans la variable «A». La commande d'impression est ensuite utilisée pour le montrer à l'interface de sortie, comme le montre également l'instantané suivant. Dans ce scénario, le document a une taille de 4 octets:

Exemple 5:

Nous pouvons également utiliser ce module pour trouver le type de fichier car il a plusieurs fonctions qui agissent comme un contrôle du type de fichier. Dans cet exemple, plusieurs méthodes de ce module sont testées pour prédire le type de fichier dans un programme Python.

Dans cette première tentative, nous utiliserons l'instruction IF-CHECK multiple où nous utilisons la méthode ISDIR, la méthode ISreg et la méthode Islink qui recherchent respectivement un répertoire ou un fichier régulier ou même pour un lien. Dans cette tentative, nous avons donné le chemin d'accès d'un fichier texte normal et nous obtenons l'instruction d'impression du bloc IF où la condition pour le fichier ordinaire devient vraie, comme le montre l'extrait suivant:

Maintenant, nous utiliserons les mêmes blocs des instructions IF et vérifierons ces méthodes pour vérifier si elles peuvent détecter un lien à la place du chemin du fichier comme paramètre.

Dans cette tentative, nous avons donné un lien vers un site Web de la fonction STAT et l'avons transmis dans le paramètre de plusieurs autres fonctions. L'instruction d'impression dans la fonction isLink est le bloc IF qui est vrai dans cette situation comme nous pouvons le voir dans la sortie suivante:

Conclusion

Le module STAT OS est un outil très utile et peut être utilisé dans de nombreux cas d'utilisation. Si vous écrivez dans un fichier et que vous souhaitez voir si des modifications ont été apportées, vous pouvez regarder la dernière heure modifiée. Vous pouvez également vérifier directement la taille du fichier à partir de votre code. Il y a plus d'applications, mais elles sont plus sophistiquées et doivent être considérées à la lumière de la situation à accomplir. Cet article devrait vous aider à comprendre comment fonctionne le module STAT OS dans Python.