Python - Listado de directorios
Python se puede utilizar para obtener la lista de contenido de un directorio. Podemos hacer que el programa enumere el contenido del directorio que está en la misma máquina donde se ejecuta Python. También podemos iniciar sesión en el sistema remoto y listar el contenido del directorio remoto.
Listado del directorio local
En el siguiente ejemplo usamos el método listdir () para obtener el contenido del directorio actual. Para indicar también el tipo de contenido como archivo o directorio, usamos más funciones para evaluar la naturaleza del contenido.
for name in os.listdir('.'):
if os.path.isfile(name): print 'file: ', name
elif os.path.isdir(name): print 'dir: ', name
elif os.path.islink(name): print 'link: ', name
else: print 'unknown', name
Cuando ejecutamos el programa anterior, obtenemos el siguiente resultado:
file: abcl.htm
dir: allbooks
link: ulink
Tenga en cuenta que el contenido anterior es específico del sistema donde se ejecutó el programa Python. El resultado variará según el sistema y su contenido.
Listado de directorio remoto
Podemos listar el contenido del directorio remoto usando ftp para acceder al sistema remoto. Una vez establecida la conexión, podemos usar comandos que enumerarán el contenido del directorio de una manera similar a la lista de directorios locales.
from ftplib import FTP
def main():
ftp = FTP('ftp.ibiblio.org')
ftp.login()
ftp.cwd('pub/academic/biology/') # change to some other subject
entries = ftp.nlst()
ftp.quit()
print(len(entries), "entries:")
for entry in sorted(entries):
print(entry)
if __name__ == '__main__':
main()
Cuando ejecutamos el programa anterior, obtenemos el siguiente resultado:
(6, 'entries:')
INDEX
README
acedb
dna-mutations
ecology+evolution
molbio