GNU/Linux >> Linux Esercitazione >  >> Linux

restituire il valore dallo script python allo script shell

Puoi anche usare exit() senza sys; una cosa in meno da importare. Ecco un esempio:

$ python
>>> exit(1)
$ echo $?
1

$ python
>>> exit(0)
$ echo $?
0

Non puoi restituire un messaggio come codice di uscita, solo numeri. In bash è accessibile tramite $? . Puoi anche usare sys.argv per accedere ai parametri del codice:

import sys
if sys.argv[1]=='hi':
    print 'Salaam'
sys.exit(0)

nella shell:

#!/bin/bash
# script for tesing
clear
echo "............script started............"
sleep 1
result=`python python/pythonScript1.py "hi"`
if [ "$result" == "Salaam" ]; then
    echo "script return correct response"
fi

Passa gli argomenti della riga di comando allo script della shell a Python in questo modo:

python script.py $1 $2 $3

Stampa il codice di ritorno in questo modo:

echo $?

Linux
  1. Come scaricare file dal server SFTP utilizzando lo script python

  2. Non riesci a ottenere il codice di uscita corretto da uno script?

  3. Come eseguire script Python dalla shell

  4. Interruzione di uno script di shell se qualsiasi comando restituisce un valore diverso da zero

  5. Script bash:utilizzo del comando script da uno script bash per la registrazione di una sessione

Utilizzando il comando passwd dall'interno di uno script di shell

Come ottenere un valore di ritorno da CHILD PROCESS?

Cambia la directory di lavoro nella shell con uno script python

Possibile script misto shell e python?

Esecuzione di uno script Python da PHP

Valore di ritorno di x =os.system(..)