Supondo que você esteja no 14.04 (usando python3), o pequeno script abaixo lista seus arquivos recursivamente em determinado diretório. Ele identifica o tipo MIME do arquivo pelo comando file
, conforme descrito aqui
file --mime-type -b filename
Além disso, você pode estender o script adicionando um comando usando shutil
(por exemplo, .move / .copy
) no mesmo nível que o comando print
.
Adicionando mimetypes
Para uma pesquisa combinada, você pode adicionar (ou remover) os tipos MIME para pesquisar, adicionando-os ao filetypes
-tuplo.
O script
#!/usr/bin/env python3
import os
import subprocess
source_dir = "/path/to/directory"
filetypes = ("image", "video")
for root, dirs, files in os.walk(source_dir):
for name in files:
file = root+"/"+name
ftype = subprocess.check_output(['file', '--mime-type', '-b', file]).decode('utf-8').strip()
if ftype.split("/")[0] in filetypes:
print(file)
Como usar
Copie o script em um arquivo vazio, configure o diretório para listar ( sourcedir
) e o (s) mimtype (s) para procurar ( filetypes
), salve-o como list_files.py
e execute-o pelo comando:
python3 /path/to/list_files.py