Můžete použít tuto syntaxi shellu (nazývá se zde dokument v unixové literatuře):
#!/bin/sh
echo this is a shell script
python <<@@
print 'hello from Python!'
@@
Značka za operátorem '<<' může mít libovolný identifikátor, lidé často používají něco jako EOF (konec souboru) nebo EOD (konec dokumentu). Pokud značka začíná řádek, shell to interpretuje jako konec vstupu pro program.
Pokud je vaše python
scénář je velmi krátký. Můžete jej předat jako řetězec python
pomocí -c
možnost:
python -c 'import sys; print "xyzzy"; sys.exit(0)'
Nebo
python -c '
import sys
print("xyzzy")
sys.exit(0)
'
Mohl bys napsat
exec python <<END_OF_PYTHON
import sys
print ("xyzzy")
sys.exit(0)
END_OF_PYTHON
nahradit proces Bash Pythonem a předat zadaný program Pythonu na jeho standardním vstupu. (exec
nahrazuje proces Bash. <<END_OF_PYTHON
způsobí, že standardní vstup obsahuje vše až do END_OF_PYTHON
.)