Contenidos
- 1. Lanzar un programa en Python
- 2. Ejecutar un comando de Windows y almacenar la salida en un archivo en Python
- 3. Llamar desde Python a un proceso en Linux con un script en Bash
- 4. Ejecutar un script desde PowerShell en Python
- 5. Lanzar un programa que ejecute ping en Python
- 6. Lanzar un programa que ejecute un ping dos veces en Python
- 7. Obtener información del proceso padre e hijo en Python
- 8. Crear un proceso en Python con subprocess.Popen
- 9. Uso de waitFor() en procesos en Python (equivalente a wait)
- 10. Crear un proceso en Python con la clase os.system
- 11. Comunicar dos procesos en Python mediante pipes
- 12. Realizar una comunicación entre dos procesos en Python
1. Lanzar un programa en Python
1 2 3 4 5 6 |
import subprocess def lanzar_programa(): subprocess.run(["nombre_programa"]) lanzar_programa() |
2. Ejecutar un comando de Windows y almacenar la salida en un archivo en Python
1 2 3 4 5 6 7 8 |
import subprocess def ejecutar_comando_y_guardar(): resultado = subprocess.run(["ipconfig"], capture_output=True, text=True) with open("salida.txt", "w") as archivo: archivo.write(resultado.stdout) ejecutar_comando_y_guardar() |
3. Llamar desde Python a un proceso en Linux con un script en Bash
1 2 3 4 5 6 |
import subprocess def ejecutar_script_bash(): subprocess.run(["bash", "ruta_al_script.sh"]) ejecutar_script_bash() |
4. Ejecutar un script desde PowerShell en Python
1 2 3 4 5 6 |
import subprocess def ejecutar_script_powershell(): subprocess.run(["powershell", "-File", "ruta_al_script.ps1"]) ejecutar_script_powershell() |
5. Lanzar un programa que ejecute ping en Python
1 2 3 4 5 6 |
import subprocess def ejecutar_ping(): subprocess.run(["ping", "8.8.8.8"]) ejecutar_ping() |
6. Lanzar un programa que ejecute un ping dos veces en Python
1 2 3 4 5 6 7 |
import subprocess def ejecutar_ping_dos_veces(): for _ in range(2): subprocess.run(["ping", "8.8.8.8"]) ejecutar_ping_dos_veces() |
7. Obtener información del proceso padre e hijo en Python
1 2 3 4 5 6 7 8 9 |
import os def informacion_proceso(): pid = os.getpid() ppid = os.getppid() print(f"Proceso actual PID: {pid}") print(f"Proceso padre PID: {ppid}") informacion_proceso() |
8. Crear un proceso en Python con subprocess.Popen
1 2 3 4 5 6 7 |
import subprocess def crear_proceso(): proceso = subprocess.Popen(["nombre_programa"]) proceso.wait() crear_proceso() |
9. Uso de waitFor()
en procesos en Python (equivalente a wait
)
1 2 3 4 5 6 7 |
import subprocess def esperar_proceso(): proceso = subprocess.Popen(["nombre_programa"]) proceso.wait() esperar_proceso() |
10. Crear un proceso en Python con la clase os.system
1 2 3 4 5 6 |
import os def crear_proceso_con_runtime(): os.system("nombre_programa") crear_proceso_con_runtime() |
11. Comunicar dos procesos en Python mediante pipes
1 2 3 4 5 6 7 8 9 |
import subprocess def comunicar_procesos(): proceso1 = subprocess.Popen(["echo", "Hola, proceso 2!"], stdout=subprocess.PIPE) proceso2 = subprocess.Popen(["grep", "Hola"], stdin=proceso1.stdout, stdout=subprocess.PIPE) salida = proceso2.communicate()[0] print(salida.decode()) comunicar_procesos() |
12. Realizar una comunicación entre dos procesos en Python
1 2 3 4 5 6 7 8 9 10 11 12 |
import subprocess def comunicar_procesos_bidireccional(): proceso1 = subprocess.Popen(["echo", "Hola, proceso 2!"], stdout=subprocess.PIPE) salida1 = proceso1.communicate()[0] proceso2 = subprocess.Popen(["cat"], stdin=subprocess.PIPE, stdout=subprocess.PIPE) salida2 = proceso2.communicate(input=salida1)[0] print(salida2.decode()) comunicar_procesos_bidireccional() |