Hallo, ich habe ein Shell-Skript, das auf der Grundlage der Rückkehr von PHP-Code ausgeführt werden sollte:
x=1
while [[ "$x" != 5 ]]
do
echo "Welcome $x"
php test.php
x=$?
done
Und der php-Code
echo "Testdfdf test".PHP_EOL;
exit(4);
Also möchte ich, wenn ich 5 von php erhalte, die Schleife beenden.
Aber ich verstehe manchmal:
./myshell: line 7: 20529 Segmentation fault php test.php
Sollte die Schleife ohne Probleme funktionieren?
1 Stimmen
Aktivieren Sie Core-Dumps mit ulimit; führen Sie das Skript aus; wenn Sie sich die Core-Datei ansehen, wird sie Ihnen sagen, welcher Prozess zu ihrer Erstellung geführt hat - höchstwahrscheinlich der PHP-Interpreter, so dass es sich nicht um ein Bash-Problem handelt; Sie können dann einen Stack-Trace aus dem Core-Dump erzeugen, um ihn der entsprechenden Partei zu melden.