Ich habe ein Bash-Skript basierend auf this und this geschrieben. Das Skript ist:Wie schreibe ich ein Bash-Skript, das ein Python-Programm ausführt, das mit Parametern neu startet
#!/bin/bash
until python data.py $1 $2 ; do
echo "'data.py' crashed with exit code $?. Restarting..." >> errors.txt
sleep 1
done
Ich betreibe es:
./run.sh ‘a’ ‘n’
aber in data.py
if sys.argv[1] == 'a':
false zurück. Wie gebe ich $ 1 und $ 2 an mein Python-Programm weiter? TIA !!!
EDIT: SOLUTION
Dank Jandom und andlrc: Ich nenne es:
./run.sh "a" "n"
und das Skript ändern:
until python data.py "[email protected]" ; do
Sind diese wirklich '' '(d. H. [U 'u2018''] (http://www.charbase.com/2018-unicode-left-single-quotation-mark))? Denn dann, 'sys.argv == [script_name, 'a' ',' 'b' ']', wahrscheinlich. – dhke