Deletar arquivos dentro de diretório e subdiretório

2,004 views
Skip to first unread message

Alexandre Goncalves

unread,
Jun 22, 2017, 2:19:42 PM6/22/17
to Python Brasil
Boa tarde!!

import os
import glob

'''
files = glob.glob('C:/Users/alexandre/Downloads/Guru/*')
for f in files:
    os.remove(f)
'''

a = open("output.txt", "w")
for path, subdirs, files in os.walk(r'C:/Users/alexandre/Downloads/Guru'):
for filename in files:
a.write(filename + os.linesep)
Pessoal eu andei pesquisando como deletar um arquivo.
Eu preciso adaptar o código comentado para deletar todos os arquivos dentro do diretório GURU (porém dentro desse diretório tem vários subdiretórios)


Att

Diego Rocha

unread,
Jun 22, 2017, 3:18:06 PM6/22/17
to Python Brasil
Alexandre,

Não entendi: Você quer remover apenas os que existem em GURU e deixar os arquivos dos subdiretórios, ou apagar tudo inclusive dos subdiretórios (recursivamente)?

Atenciosamente,

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasi...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.
--
Atenciosamente,
Diego Rocha

Alexandre Goncalves

unread,
Jun 22, 2017, 3:19:49 PM6/22/17
to Python Brasil
Apagar tudo (recursivamente)!!

Caio César Lima Borges

unread,
Jun 23, 2017, 7:36:29 AM6/23/17
to Python Brasil
import shutil
shutil.rmtree('/caminho/do/diretorio/')

Alexandre Goncalves

unread,
Jun 23, 2017, 8:02:55 AM6/23/17
to Python Brasil
Minha intenção é deletar somente os arquivos dentro do diretório (GURU) e dos subdiretórios que está dentro de (GURU/).

Seu código deletou também os diretórios, isso eu não possa fazer!

Caio César Lima Borges

unread,
Jun 23, 2017, 4:32:11 PM6/23/17
to python...@googlegroups.com
Pensei que vc queria remover tudo, então pelo que entendi vc quer remover apenas os arquivos do diretório e os arquivos de seus subdiretórios mantendo as pastas intactas, isso?

Se for basta fazer um loop capturando tudo e checar se é diretório ou arquivo...

Segue um pequeno exemplo, talvez lhe ajude (n esquece de descomentar o elif):

import os, shutil
folder = '/caminho/da/pasta'
for the_file in os.listdir(folder):
    file_path = os.path.join(folder, the_file)
    try:
        if os.path.isfile(file_path):
            os.unlink(file_path) # mesma coisa que remove()
        #elif os.path.isdir(file_path): shutil.rmtree(file_path)
    except Exception as e:
        print(e)

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasil+unsubscribe@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/python-brasil/q2EaLSf8_ns/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para python-brasil+unsubscribe@googlegroups.com.

Para mais opções, acesse https://groups.google.com/d/optout.



--
Caio César Lima Borges
Programador - MULTSOFT DESENVOLVIMENTO DE SISTEMAS

Felipe Silva

unread,
Jun 23, 2017, 7:05:53 PM6/23/17
to python...@googlegroups.com

--
--
------------------------------------
Grupo Python-Brasil
http://www.python.org.br/wiki/AntesDePerguntar
 
<*> Para visitar o site do grupo na web, acesse:
http://groups.google.com/group/python-brasil
 
<*> Para sair deste grupo, envie um e-mail para:
python-brasil+unsubscribe@googlegroups.com

---
Você recebeu essa mensagem porque está inscrito no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para python-brasil+unsubscribe@googlegroups.com.

Alexandre Goncalves

unread,
Jun 23, 2017, 11:07:08 PM6/23/17
to Python Brasil
Boa noite!!

Se eu descomentar elif, deleta os subdiretóriose consecuentemente os arquivos, se eu não descoonmentar, não deleta (nada) os arquivos.

Obs: Eu testei em casa com Ubuntu [Python3.5.3], no serviço eu uso W7 Prof 64bits [Python3.5.6]

Obrigado pelo retorno!

Att

Flávio Barros

unread,
Jun 27, 2017, 8:55:32 AM6/27/17
to Python Brasil
Bom dia

E como deletar arquivos com base na data ?
Por exemplo, queria deletar os 3 mais antigos.

Ataú Bruno

unread,
Aug 7, 2018, 10:49:26 AM8/7/18
to Python Brasil
Obrigado! Me ajudou muito!!! Outra, as sub-pastas, queria apagar os arquivos pela data de criação ou modificação; apagar o 6º Dia, mas deixar do 5º em diante.


---
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "Python Brasil" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/python-brasil/q2EaLSf8_ns/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para python-brasi...@googlegroups.com.

Para mais opções, acesse https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages