linux命令执行成功,代码获取的状态始终不正确

问题:

  1. 通过python脚本执行更改某些系统状态的命令,检查流程均正常,但获取到的状态不正常
  2. 通过python pdb 执行,可得到正确的结果

原因:

在命令执行过程中,某些命令更改系统状态需要一个时间间隔,可能几百毫秒,或者数秒才能生效,而python脚本在执行的过程中,命令执行状态会很快返回,到执行检查状态命令完成,可能需要的时间少于命令生效所需的时间。故无法得到正确的结果

解决方式:

在更改状态生效较长的命令执行后,添加sleep

这种问题碰到了真的是很头疼,大多数时候,我们只考虑了代码逻辑的准确性,却忽略了这一点,定位的时候可能花费大量的时间。

posted @ 2020-03-16 21:08  bhz  阅读(274)  评论(0编辑  收藏  举报