DEV Community

Francisco Júnior
Francisco Júnior

Posted on

Explorando as Funções da Biblioteca `shutil` em Python

A biblioteca shutil é uma ferramenta poderosa para operações de arquivo e diretório em Python. Vamos analisar algumas de suas principais funções:

1. shutil.copy(src, dst)

Esta função é usada para copiar um arquivo de origem (src) para um destino (dst).

Exemplo:

import shutil

shutil.copy('arquivo.txt', 'caminho/destino/arquivo_copiado.txt')
Enter fullscreen mode Exit fullscreen mode

2. shutil.copy2(src, dst)

Similar à função copy(), porém preserva os metadados do arquivo, como timestamps e permissões.

Exemplo:

import shutil

shutil.copy2('arquivo.txt', 'caminho/destino/arquivo_copiado.txt')
Enter fullscreen mode Exit fullscreen mode

3. shutil.copyfile(src, dst)

Essa função copia o conteúdo de um arquivo de origem para um arquivo de destino, excluindo os metadados.

Exemplo:

import shutil

shutil.copyfile('arquivo_origem.txt', 'arquivo_destino.txt')
Enter fullscreen mode Exit fullscreen mode

4. shutil.copytree(src, dst, symlinks=False)

Copiar um diretório inteiro de forma recursiva para o destino.

Exemplo:

import shutil

shutil.copytree('diretorio_origem', 'caminho/para/destino')
Enter fullscreen mode Exit fullscreen mode

5. shutil.move(src, dst)

Move um arquivo ou diretório de um local para outro.

Exemplo:

import shutil

shutil.move('arquivo.txt', 'novo_diretorio/arquivo_movido.txt')
Enter fullscreen mode Exit fullscreen mode

6. shutil.rmtree(path)

Remove um diretório e todo o seu conteúdo de forma recursiva.

Exemplo:

import shutil

shutil.rmtree('diretorio_para_excluir')
Enter fullscreen mode Exit fullscreen mode

7. shutil.disk_usage(path)

Fornece informações sobre o uso de disco para um caminho especificado.

Exemplo:

import shutil

info = shutil.disk_usage('/caminho/do/diretorio')
print("Espaço Total:", info.total)
print("Espaço Usado:", info.used)
print("Espaço Livre:", info.free)
Enter fullscreen mode Exit fullscreen mode

8. shutil.make_archive(base_name, format, root_dir=None, base_dir=None)

Cria um arquivo compactado (por exemplo, .zip, .tar) de um diretório.

Exemplo:

import shutil

shutil.make_archive('arquivo_zip', 'zip', 'diretorio_a_zipar')
Enter fullscreen mode Exit fullscreen mode

9. shutil.unpack_archive(filename, extract_dir=None)

Extrai um arquivo compactado para um diretório especificado.

Exemplo:

import shutil

shutil.unpack_archive('arquivo_zip.zip', 'diretorio_destino')
Enter fullscreen mode Exit fullscreen mode

10. shutil.get_archive_formats()

Retorna uma lista de formatos de arquivo suportados para a criação de arquivos compactados.

Exemplo:

import shutil

formats = shutil.get_archive_formats()
print("Formatos de Arquivo Suportados:", formats)
Enter fullscreen mode Exit fullscreen mode

Estas funções são apenas uma amostra do que a biblioteca shutil oferece. Elas permitem realizar uma variedade de operações em arquivos e diretórios, desde cópia e movimentação até compactação e exclusão, facilitando o trabalho com sistemas de arquivos em Python.

Top comments (0)