Cette réponse explique comment exécuter un extrait de code Python sur plusieurs lignes à partir de la ligne de commande dans un terminal. J'ai remarqué que la réponse fonctionne très bien dans les scripts shell, même avec une indentation imbriquée, ce qui est très bien, par exemple
#!/bin/bash
some_text="Hello world"
echo $some_text
cat <<EOF | python -
import sys;
for r in range(3):
print r
for a in range(2):
print "hello"
EOF
impressions:
0
hello
hello
1
hello
hello
2
hello
hello
Cependant, j'ai du mal à partager des variables entre le script shell et l'extrait de code Python.
Comment puis-je collecter la sortie de l'indice python dans le script bash? (par exemple dans une variable telle que
$output
).Comment puis-je passer une variable bash (par exemple
$some_text
) au script Python?
python - <<EOF
place.