Stat de arquivo python

Stat de arquivo python
O módulo OS do Python oferece um conjunto de métodos que permitem aos usuários interagir com o sistema operacional do computador. O módulo OS é classificado com os outros módulos básicos de utilidade do Python. Este módulo oferece uma abordagem portátil para usar a funcionalidade que depende do sistema operacional. Um exemplo é o módulo Stat () de Python, que é usado para adquirir todas as informações em um arquivo ou pasta. Funciona executando uma chamada de sistema de estatísticas no caminho especificado. Ele fornece uma variedade de informações como o número do inode, o tamanho, o número de links rígidos, o tempo em que foi criado e atualizado e muito mais. O módulo STAT inclui constantes e métodos para interpretar a saída do sistema operacional. stat (), OS. fstat () e OS. funções fstat ().

A sintaxe para o método STAT é o seguinte:

>> OS.estado (caminho)

Aqui, o "caminho" está completo. Um caminho que pode ser representado como um texto ou um objeto de bytes para o qual queremos obter as informações ou status.

Esta função retorna um objeto "stat_result" do tipo "OS.stat_result ”que descreve o status do caminho. O objeto “stat_result” retornado contém as seguintes propriedades:

  • ST_MODE: Representa o tipo de arquivo e os bits do modo de arquivo (permissões).
  • St_ino: no Unix, representa o número do inode. Mas no Windows, representa o índice de arquivo.
  • ST_DEV: Esta é a identificação do dispositivo para a qual este arquivo é armazenado.
  • O número de links rígidos é representado por st_nlink.
  • St_uid: esta é a identidade do usuário do proprietário do arquivo.
  • ST_GID: Esta é a identidade do grupo do proprietário do arquivo.
  • ST_SIZE: Esta variável reflete o tamanho do arquivo em bytes.
  • St_atime: este é o tempo de acesso mais recente. É medido em segundos.
  • ST_MTIME: Este é o momento da modificação de conteúdo mais recente. É medido em segundos.
  • ST_CTIME: On UNIX, reflete o tempo da modificação de metadados mais recente. Enquanto no Windows, representa o tempo da criação. É medido em segundos.
  • ST_ATIME NS: O mesmo que St_atime, exceto que o tempo é dado como um número inteiro em nanossegundos.
  • St_mtime ns: o mesmo que st_mtime, mas o tempo é dado como um número inteiro em nanossegundos.
  • ST_CTIME NS: O mesmo que St Ctime, mas o tempo é dado como um número inteiro em nanossegundos.
  • ST_BLOCKS: o número de blocos de 512 bytes alocados ao arquivo.
  • Se o dispositivo for inode, ele será representado por st_rdev.
  • ST_FLAGS: Representa as bandeiras definidas pelo usuário do arquivo.

Nota: Alguns atributos dependem da plataforma e podem não estar disponíveis.
Neste artigo, vamos dar uma olhada em algum código Python, bem como alguns exemplos do módulo Stat () que Python oferece.

Exemplo 1:

É um exemplo muito básico no qual vamos especificar um arquivo para o sistema operacional.Método STAT () para obter o status do arquivo ou todos os detalhes relacionados.v

Na primeira linha, o caminho de um arquivo é armazenado na variável denominada "file_path". Então, o sistema operacional.O método stat () é chamado com o caminho do arquivo como seu parâmetro. Ele retorna o status do objeto file_path e é armazenado na nova variável chamada "estatísticas". O status ou os detalhes do arquivo recuperado é demonstrado no lado da saída usando a diretiva de publicação, como visto no snippet seguinte:

Exemplo 2:

Podemos ver no exemplo anterior que o sistema operacional.stat () retorna todas as informações de uma só vez. Isso pode ser muito pesado e confuso às vezes, especialmente quando precisamos apenas de algumas informações específicas. Neste exemplo, apenas os atributos limitados do arquivo são exibidos.

No código fornecido, três módulos são importados em python - os, stat e tempo. Na próxima linha, o sistema operacional.O método STAT () é chamado com um caminho de arquivo em seu parâmetro. Ele cria um objeto "stats_result" que fornece o status do arquivo que contém todas as informações e atributos desse arquivo. Então, 3 atributos são chamados com o formato de “tempo.ctime ”que são exibidos no terminal de saída usando o comando de impressão. Primeiro, "st_atime" é exibido. Então, "st_mtime". E, finalmente, "st_ctime", como mostrado na captura de tela a seguir:

Exemplo 3:

Da mesma forma, neste exemplo, o atributo st_mode do arquivo é exibido, que denota o tipo de arquivo e os bits de modo do arquivo (permissões).

Na primeira etapa, o módulo do sistema operacional e o módulo STAT são importados para o Python. Na próxima linha, um caminho de arquivo é passado para o sistema operacional.Método STAT () que retorna a condição do arquivo, que inclui todos os detalhes do arquivo. Isso é armazenado na variável chamada "s". Para exibir os bits de modo, “Stat.St_mode ”é chamado para objetos (que contêm o status do sistema operacional do arquivo). Isso recupera os bits do modo do arquivo, que são demonstrados usando a diretiva de publicação no nó de saída, como visto no seguinte instantâneo:

Exemplo 4:

Outro método muito útil de estatística é retornar o tamanho do arquivo. Vamos ver como pegar o comprimento do arquivo em Python, utilizando o pacote de estatísticas do sistema operacional.

Em Python, o primeiro passo é adquirir o sistema operacional e os módulos de stat. Depois disso, um caminho de arquivo é passado para as características do sistema operacional.Método STAT () que retorna o status desse arquivo junto com todos os seus atributos. Isso é armazenado na variável chamada "estatísticas". Para obter o tamanho do arquivo, apenas a estatística.ST_SIZE é chamado para o objeto "estatísticas" e é armazenado na variável "A". O comando de impressão é então usado para mostrá -lo na interface de saída, como demonstrado no instantâneo a seguir também. Nesse cenário, o documento tem 4 bytes em tamanho:

Exemplo 5:

Podemos usar este módulo para encontrar o tipo de arquivo também, porque ele tem várias funções que atuam como uma verificação do tipo de arquivo. Neste exemplo, vários métodos deste módulo são testados para prever o tipo de arquivo em um programa Python.

Nesta primeira tentativa, usaremos a declaração múltipla if-check, onde usamos o método ISDIR, o método ISreg e o método Islink que procuram um diretório ou um arquivo regular ou mesmo para um link, respectivamente. Nesta tentativa, demos o caminho de um arquivo de texto normal e obtemos a declaração de impressão do bloco if onde a condição para o arquivo regular se torna verdadeira, como visto no snippet seguinte:

Agora, usaremos os mesmos blocos das instruções if e verificaremos esses métodos para verificar se eles podem detectar um link no lugar do caminho do arquivo como o parâmetro.

Nesta tentativa, demos um link para um site na função estatística e passamos para o parâmetro de várias outras funções. A declaração de impressão na função Islink IF Block, que é verdadeira nesta situação, como podemos ver na seguinte saída:

Conclusão

O módulo STAT do sistema operacional é uma ferramenta muito útil e pode ser usada em muitos casos de uso. Se você está escrevendo para um arquivo e quiser ver se alguma alteração foi feita, pode olhar para o último horário modificado. Você também pode verificar diretamente o tamanho do arquivo do seu código. Existem mais aplicações, mas elas são mais sofisticadas e devem ser consideradas à luz da situação em questão. Este artigo deve ajudá -lo a compreender como o módulo de status do sistema operacional funciona no Python.