Tengo una función de "correo electrónico de alarma" dentro de un módulo python. Quiero poder llamar a esta función desde un script bash. Sé que puedes llamar a un módulo usando 'python' en el script, pero no estoy si puedes o cómo llamarías a una función específica dentro del módulo.Llamar a una función python desde el script bash
Respuesta
python -c'import themodule; themodule.thefunction("boo!")'
Usted puede utilizar la opción -c
:
python -c "import random; print random.uniform(0, 1)"
Modificar como sea necesario.
llamar a una función específica en un módulo, asegurar que el módulo tiene la siguiente:
if __name__ == "__main__":
the_function_to_call()
, entonces solo puede hacer esto en su secuencia de comandos shell.
python module.py
O
python -m module
Dependiendo de si o no las del módulo en el PYTHONPATH
.
Esto solo funcionaría si aún no tienes un main o ya tienes un main que apunta a la función que necesitas. En mi caso, ya hay un main y apunta a otra función en el módulo, por lo que esta no era una opción. – Daniel
@Daniel: Eso no es una limitación, así es como diseñan las cosas. Si ya tiene un 'main' y hace lo incorrecto, lo ha diseñado mal. –
@ S.Lott: No está diseñado mal. El método en sí mismo hace exactamente lo que necesita hacer. Es una limitación porque es un módulo, no una clase, lo que significa que es una agrupación de funciones similares. Los puntos principales en el que normalmente se llama, pero en este caso necesito comenzar con una función no típica, por lo tanto, la llamada directa. – Daniel
- 1. ¿Cómo llamar comandos bash desde tcl script?
- 2. ¿Llamar a exiftool desde un script python?
- 3. Compruebe si existe una función desde un script bash
- 4. Llamar a una función de Python desde un script de shell
- 5. Llamar a Python desde C++
- 6. ¿Cómo llamar a un script de Python desde PHP?
- 7. Llamar a un script de Python desde un Applescript
- 8. ¿Puede un script de python ejecutar una función dentro de un script bash?
- 9. Llamar a gnuplot desde python
- 10. ¿Cómo llamar a un script de Python desde Perl?
- 11. Llamar a un script bash desde un script tcl y regresar y salir del estado
- 12. Llamar a una función MATLAB desde C#
- 13. Llamar a la función php desde JavaScript
- 14. Cómo llamar a una función de script de contenido desde main.js en el complemento de Firefox
- 15. Llamar a la función JQuery desde GWT
- 16. ¿Llamar a la función PHP desde url?
- 17. Llamar a la función Lua sin ejecutar el script
- 18. Llamar a Python desde Ruby
- 19. Llamar a Java desde Python
- 20. Llamar a la función de Matlab desde python
- 21. Ejecutando script bash desde java
- 22. Problema con llamar a una función PowerShell desde C#
- 23. ¿Cómo llamar a una función de JavaScript desde PHP?
- 24. ¿Ejecuta el script bash desde otro script sin esperar a que el script termine de ejecutarse?
- 25. ¿Cómo llamar a un script SQL desde otro script SQL?
- 26. ¿Cómo ejecutas SQL desde un script bash?
- 27. AutoHotKey: Llamar a un script desde otro script
- 28. Llamar a una función de pitón desde jinja2
- 29. ejecutar script bash desde php sin esperar
- 30. Función de llamada C en el script Bash
¿y si quieres pasar una cadena a la función python? o simplemente imprimir hola? 'python -c 'print (" hello ")'' no funciona. – mango
@mango - Incorrecto - los argumentos SI funcionan. Copié y pegué tu ejemplo, de hecho, y luego volví a probar usando tanto 'python3' como 'python2'. Puede tener un problema diferente. –
¿Qué sucede si el módulo python está en otro directorio? – Chaos