[英]How do I find out in Python if coreutils version 8.24 or higher is installed?
有一个功能可以使用coreutils 8.24监视dd的进度
(另请参阅: https : //askubuntu.com/questions/215505/how-do-you-monitor-the-progress-of-dd/539305 )
这意味着,我可以调用shell突击队,例如
dd if=/dev/urandom of=/dev/null status=progress
执行上面指定的命令时,如何确保正确的coreutils版本安装在主机系统上?
由于此行是python应用程序的一部分,可能在不同的发行版上运行,因此,使用包管理器进行验证不是最好的方法。 同样,我们无法使用which
命令来验证已安装库的存在。
您可以调用subprocess.check_output,因为dd
提供了--version
标志来输出其版本:
import subprocess
m = subprocess.check_output(["dd", "--version"])
ver_line = m.split('\n')[0]
ver = ver_line.split(' ')
msg = 'dd status=progress does not work'
if float(ver[2]) >= 8.24:
msg = 'dd status=progress works'
print msg
可能是一个足够好的版本检查。
我不认为您的示例dd
命令不是您真正想要的命令。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.