FileNotFoundError: Das System kann die angegebene Fecha de publicación

Actualmente estoy aprendiendo a usar el subprocess del módulo y acabo de comenzar con mi nuevo libro. Al instante, recibí un mensaje de error que no entiendo.

 Traceback (most recent call last): File "D:/me/Python/subprocess.py", line 3, in  proc = subprocess.Popen(['echo', 'Hello there'], stdout=subprocess.PIPE) File "C:\Python34\lib\subprocess.py", line 859, in __init__ restre_signals, start_new_session) File "C:\Python34\lib\subprocess.py", line 1112, in _execute_child startupinfo) FileNotFoundError: [WinError 2] Das System kann die angegebene Datei nicht finden 

‘Das System kann die angegebene Datei nicht finden’ es alemán para: ‘El sistema no puede encontrar el archivo especificado’. Como yo también soy alemán, no tengo problemas con el error alemán, pero no he descubierto qué es lo que está mal aquí :

 import subprocess proc = subprocess.Popen(['echo', 'Hello there'], stdout=subprocess.PIPE) out, err = proc.communicate() print(out.decode('utf-8')) 

En el libro dijeron que este código debería imprimir ‘Hola allí’ en la pantalla, pero por alguna razón, no lo hace.

¿Que esta mal aquí? Actualmente estoy usando python 3.4.3, si eso te ayuda.

echo no es un progtwig que se pueda ejecutar, pero es un comando de shell disponible en el intérprete de línea de comandos de Windows cmd.exe .

Para ejecutar comandos de shell, debe pasar shell=True a Popen :

 proc = subprocess.Popen(['echo', 'Hello there'], stdout=subprocess.PIPE, shell=True) # ^^^^^^^^^^