I want to assign the output of a command I run using os.system
to a variable and prevent it from being output to the screen. But, in the below code ,the output is sent to the screen and the value printed for var
is 0, which I guess signifies whether the command ran successfully or not. Is there any way to assign the command output to the variable and also stop it from being displayed on the screen?
var = os.system("cat /etc/services")
print var #Prints 0
os.system
(noros.popen
, per the answer you accepted): usesubprocess.Popen
, it's way better! – Evesubprocess.Popen
-- just addshell=True
! – Eveshell=True
is (generally) a very bad idea! You have to be very sure of what you're executing :) – Carousel