Preciso rodar um código em python chamado usando shell script e obter a saída de uma função numa variável do shell script para uso futuro.
Gostaria de saber se alguém possui alguma ideia de como fazer isso, se eu devo chamar alguma função específica da biblioteca os e como eu devo receber o valor na variável no script (como por exemplo VAR=$(python myScript.py).
(o exemplo aqui é simples com -c, mas basta modificar o myScript.py para print o que você quer armazenar no shell).
Importar os no Python, definir os.environ["VAR"] e, ao iniciar um shell a partir do Python (os.system, subprocess.popen, etc.), $VAR estará definida. Note que os.environ só aceita strings.
#!/usr/bin/env/python3
import os
os.environ["VAR"] = str(2**0.5)
os.system("echo \"$VAR\" | rev")
Ambos mostram 1590373265312414.1, a raiz de 2 ao contrário.