Valeur retourné par un script shell dans un programme C
Bonjour tt le monde,
J'ai un petit problème au niveau de la valeur retourné d'un script shell dans un programme C avec system, voici mon script :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
cat fich1 | awk '$2 != "null" && ( $4 == "idle" || $4 == "printing" ) { printf "%-14.14s%-10.10s\n", $1, $2 } ' > /sfctrl/tmp/SpListDisp.txt
ret=$?
echo $ret
if test $ret -ne 0
then
echo Error en la ejecuccion del proceso splist
exit 99
fi
nbLinas=`cat /sfctrl/tmp/SpListDisp.txt | wc -l`
if [ $nbLinas -eq 0 ]
then
echo No hay impresoras preparadas
exit 1
fi
exit 0 |
Donc la valeur retourné par le script est soit 0, 1 ou 99, mais voilà lors de la recuperation du retour dans le programme comme suite :
Code:
1 2 3 4 5
|
int iRet=0;
...
iRet = system(szCmd);
.... |
J'ai 256 si la valeur retourné est 1 !!!
Comment pourrai-je récupérer la valeur exacte retourné par le script dans le programme C.
Merci bq pour votre temps :king: