Advertisement
teslariu

archivos

Oct 23rd, 2021
95
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. import os
  5. from datetime import datetime
  6. from tabulate import tabulate
  7.  
  8. directorio = input("Ingrese un directorio: ")
  9.  
  10. ###### listado de todos los archivos en un directorio ###########
  11. total = 0
  12. print("\nArchivos")
  13. for elemento in os.scandir(directorio):
  14.     if elemento.is_file():
  15.         print(elemento.name)
  16.         total += 1
  17. print(f"\nTotal: {total}")
  18.        
  19. ##### listado de todos los subdirectorios ################
  20. total = 0
  21. print("\n\nSubdirectorios")
  22. for elemento in os.scandir(directorio):
  23.     if elemento.is_dir():
  24.         print(elemento.name)
  25.         total += 1
  26. print(f"\nTotal: {total}")
  27.  
  28.  
  29. #### para mostrar los archivos con tamaño y fecha de modificación
  30. tabla = []
  31. for elemento in os.scandir(directorio):
  32.     if elemento.is_file():
  33.         tamanio = elemento.stat().st_size
  34.        
  35.         if tamanio < 1024:
  36.             tamanio = f"{tamanio} B"
  37.         elif 1024 <= tamanio < 1024**2:
  38.             tamanio = "{:.1f} KB".format(tamanio / 1024)
  39.         else:
  40.             tamanio = "{:.1f} MB".format(tamanio / 1024**2)
  41.            
  42.         ult_mod = datetime.utcfromtimestamp(elemento.stat().st_mtime).strftime("%d-%b-%y %H:%M")
  43.         tabla.append([elemento.name, tamanio, ult_mod])
  44.  
  45. print(tabulate(
  46.             tabla,
  47.             headers = ["Archivo", "Tamaño", "Ultima modificación"],
  48.             tablefmt = 'grid',
  49.             colalign = ["left", "right", "center"]
  50.             )
  51.     )
Advertisement
RAW Paste Data Copied
Advertisement