Sie können diese Shell-Syntax verwenden (sie heißt hier Dokument in der Unix-Literatur):
#!/bin/sh
echo this is a shell script
python <<@@
print 'hello from Python!'
@@
Die Markierung nach dem '<<'-Operator kann ein beliebiger Bezeichner sein, Leute verwenden oft etwas wie EOF (end of file) oder EOD (end of document). Wenn der Marker eine Zeile beginnt, interpretiert die Shell dies als Ende der Eingabe für das Programm.
Wenn Ihr python
Skript ist sehr kurz. Sie können es als Zeichenfolge an python
übergeben mit -c
Möglichkeit:
python -c 'import sys; print "xyzzy"; sys.exit(0)'
Oder
python -c '
import sys
print("xyzzy")
sys.exit(0)
'
Sie könnten schreiben
exec python <<END_OF_PYTHON
import sys
print ("xyzzy")
sys.exit(0)
END_OF_PYTHON
um den Bash-Prozess durch Python zu ersetzen und das angegebene Programm über seine Standardeingabe an Python zu übergeben. (Die exec
ersetzt den Bash-Prozess. Die <<END_OF_PYTHON
bewirkt, dass die Standardeingabe alles bis END_OF_PYTHON
enthält .)