Tengo un montón de llamadas al sistema en ruby como las siguientes y quiero verificar sus códigos de salida simultáneamente para que mi script salga si ese comando falla.
system("VBoxManage createvm --name test1")
system("ruby test.rb")
Quiero algo como
system("VBoxManage createvm --name test1", 0)
<- donde el segundo parámetro verifica el código de salida y confirma que esa llamada al sistema fue exitosa, y si no, generará un error o hará algo por el estilo.
¿Es eso posible?
Intenté algo parecido a esto y tampoco funcionó.
system("ruby test.rb")
system("echo $?")
o
`ruby test.rb`
exit_code = `echo $?`
if exit_code != 0
raise 'Exit code is not zero'
end
exit_code
será una cadena, ya sea "0\n"
o "1\n"
, por exit_code != 0
lo que siempre será cierto