DEV Community

Francisco Júnior
Francisco Júnior

Posted on

10

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.

Reinvent your career. Join DEV.

It takes one minute and is worth it for your career.

Get started

Top comments (0)

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

👋 Kindness is contagious

Immerse yourself in a wealth of knowledge with this piece, supported by the inclusive DEV Community—every developer, no matter where they are in their journey, is invited to contribute to our collective wisdom.

A simple “thank you” goes a long way—express your gratitude below in the comments!

Gathering insights enriches our journey on DEV and fortifies our community ties. Did you find this article valuable? Taking a moment to thank the author can have a significant impact.

Okay