Tengo un script bash proporcionado por un tercero que define un conjunto de funciones. Aquí está una plantilla de lo que se ve como¿Puede un script de python ejecutar una función dentro de un script bash?
$ cat test.sh
#!/bin/bash
define go() {
echo "hello"
}
que pueda hacer lo siguiente desde un shell bash para llamar a ir():
$ source test.sh
$ go
hello
¿Hay alguna manera de acceder a la misma función de un script en Python ? Intenté lo siguiente, pero no funcionó:
Python 2.6.6 (r266:84292, Sep 15 2010, 15:52:39)
[GCC 4.4.5] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> subprocess.call("source test.sh")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.6/subprocess.py", line 470, in call
return Popen(*popenargs, **kwargs).wait()
File "/usr/lib/python2.6/subprocess.py", line 623, in __init__
errread, errwrite)
File "/usr/lib/python2.6/subprocess.py", line 1141, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory
>>>
¿Qué función tiene en 'bash' que no se puede duplicar en' Python'? – ghostdog74