GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Gemischtes Shell- und Python-Skript möglich?

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 .)


Linux
  1. Wie kann ich Dateien aus einem UNIX-Shell-Skript per FTP übertragen und herunterladen?

  2. Python-Skript zum Auflisten von Benutzern und Gruppen

  3. Namenskonvention für Shell-Skript und Makefile

  4. Ist es möglich, ein Skript zum Speichern und Wiederherstellen von Berechtigungen zu erstellen?

  5. Ist es möglich, Ordner mit Shell-Skript rekursiv zu erstellen?

So vergleichen Sie Zahlen und Zeichenfolgen im Linux-Shell-Skript

So erstellen und führen Sie ein Shell-Skript in Debian 10 aus

So erstellen und führen Sie ein Shell-Skript in CentOS 8 aus

Shell-Skript mit Funktion und Parameter als Variablen?

So führen Sie Python-Skripte von der Shell aus

So erstellen und führen Sie ein Shell-Skript in Ubuntu 22.04 aus