From 9ad2161b99db91969d204b9a723b7fff6f98ad9a Mon Sep 17 00:00:00 2001 From: Manuel Vergara Date: Sat, 13 Jan 2024 20:31:41 +0100 Subject: [PATCH] Add librerias exercices --- python-ofensivo/08_librerias/01_os.py | 46 ++++++++++++++++++++++++++ python-ofensivo/08_librerias/02_sys.py | 21 ++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 python-ofensivo/08_librerias/01_os.py create mode 100644 python-ofensivo/08_librerias/02_sys.py diff --git a/python-ofensivo/08_librerias/01_os.py b/python-ofensivo/08_librerias/01_os.py new file mode 100644 index 0000000..b386594 --- /dev/null +++ b/python-ofensivo/08_librerias/01_os.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 +""" +Librería os: https://docs.python.org/3/library/os.html +""" + +import os + +directorio_actual = os.getcwd() + +print(f"\n[+] Directorio actual de trabajo: \n\t{directorio_actual}") + +files = os.listdir(directorio_actual) # Sin ruta es el directorio actual + +nombre_directorio_actual = os.path.basename(directorio_actual) + +print( + f"\n[+] El directorio \"{nombre_directorio_actual}\" contiene:") + +for file in files: + + print(f"\t- {file}") + +if not os.path.exists("mi_directorio"): + os.mkdir("mi_directorio") + + print(f"\n[+] Directorio \"mi_directorio\" creado:") + + files = os.listdir(directorio_actual) + +else: + + print(f"\n[+] Directorio \"mi_directorio\" ya existe:") + +for file in files: + + print(f"\t- {file}") + +print( + "\n[+] ¿Existe el archivo \"mi_archivo.txt\"? " + + ("Existe" if os.path.exists("mi_archivo.txt") else "No existe") + + "\n" +) + +value = os.getenv("HOME") + +print(f"[+] Variable de entorno HOME: {value}\n") diff --git a/python-ofensivo/08_librerias/02_sys.py b/python-ofensivo/08_librerias/02_sys.py new file mode 100644 index 0000000..fcce5d3 --- /dev/null +++ b/python-ofensivo/08_librerias/02_sys.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +""" +Documentación Librería sys: https://docs.python.org/3/library/sys.html + +Para ver los argumentos ejecutar: +python3 pruebas.py arg1 arg2 arg3 +""" + +import sys + +print(f"\n[+] Nombre del script: {sys.argv[0]}") +print(f"\n[+] Número de argumentos: {len(sys.argv)}") +print(f"\n[+] Argumentos: {', '.join(arg for arg in sys.argv[1:])}") + +print(f"\n[+] Path de librerías Python:") + +for path in sys.path: + print(f"- {path}") + +print(f"\n[+] Saliendo con un código de estado 1 (no exitoso)") +sys.exit(1)