mirror of https://github.com/flaggo/pydu.git
modify run method
This commit is contained in:
parent
4beaa525d5
commit
f715b37153
16
pydu/cmd.py
16
pydu/cmd.py
|
@ -10,16 +10,14 @@ def run(cmd, wait=True, shell=True, timeout=0, timeinterval=1):
|
|||
if not wait:
|
||||
return p
|
||||
|
||||
if not timeout:
|
||||
stdout, _ = p.communicate()
|
||||
return p.poll(), stdout
|
||||
if timeout:
|
||||
while timeout > 0 and p.poll() is None:
|
||||
timeout = timeout - timeinterval
|
||||
time.sleep(timeinterval)
|
||||
if p.poll() is None:
|
||||
p.kill()
|
||||
return p.poll(), 'Run timeout'
|
||||
|
||||
while timeout > 0 and p.poll() is None:
|
||||
timeout = timeout - timeinterval
|
||||
time.sleep(timeinterval)
|
||||
if p.poll() is None:
|
||||
p.kill()
|
||||
return p.poll(), 'Run timeout'
|
||||
stdout, _ = p.communicate()
|
||||
return p.poll(), stdout
|
||||
|
||||
|
|
Loading…
Reference in New Issue