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 $?