Estoy escribiendo un script bash que activa Python y luego ingresa algunos comandos simples antes de salir. Lo tengo activando Python, pero ¿cómo hago para que el script simule la entrada del teclado en el shell de Python, como si una persona lo estuviera haciendo?
4 respuestas
Use un documento "aquí". Se parece a esto
command << HERE
text that someone types in
more text
HERE
No tiene que usar "AQUÍ", puede usar algo que tenga un poco más de significado en relación con el contexto de su código.
No he usado python, pero normalmente hago eco de una cadena de comando y la canalizo al binario del intérprete de esta manera:
$ echo '<?php echo "2+2\n"; ?>' | /usr/bin/php
2+2
Supongo que puedes hacer lo mismo con Python.
Si realmente necesita simular escribir en el intérprete de Python, en lugar de canalizar un comando a python, probablemente pueda hacerlo con expect
expect
debe estar disponible en el repositorio de su distribución. Para detalles,
man expect
¿Has probado echo "Something for input" | python myPythonScript.py
?
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.