Jaka jest wartość zwracana przez subprocess.call ()?

Nie jestem pewien, jaka jest wartość zwrotusubprocess.call() znaczy.

Czy mogę bezpiecznie założyć, że wartość zero zawsze oznacza, że ​​polecenie zostało wykonane pomyślnie?

Czy wartość zwracana jest równoważna wartości wyjściowej polecenia powłoki?

Na przykład, czy następujący fragment kodu będzie działał praktycznie dla każdego polecenia w systemie Linux?

 cmd = "foo.txt > bar.txt"
 ret = subprocess.call(cmd, shell=True)
 if ret != 0:
     if ret < 0:
         print "Killed by signal", -ret
     else:
         print "Command failed with return code", ret
 else:
     print "SUCCESS!!"

Proszę, oświeć mnie :-)

questionAnswers(3)

yourAnswerToTheQuestion