捕获 nvidia-detect 输出以列出
Capturing nvidia-detect output to list
我想 运行 nvidia 检测并捕获列表或字符串中的输出,我可以将输出与我需要的进行字符串比较。
我需要知道系统是否需要 kmod-nvidia 或 kmod-nvidia-340xx。
我已经搜索并提出了两种捕获 nvidia-detect 输出的可能方法。
我的初始代码是:
test=str(os.system('nvidia-detect'))
print test
我的输出是:
kmod-英伟达
256
其中 256 是测试值。
所以在搜索之后我尝试了:
test2=subprocess.check_output('nvidia-detect', shell=True)
并得到这个错误:
Traceback (most recent call last):
File "/home/emmdom/PycharmProjects/mycode/nvidia_update.py", line 8, in <module>
test2=subprocess.check_output('nvidia-detect')
AttributeError: 'module' object has no attribute 'check_output'
我成功了,这就是最终对我有用的东西。谢谢
import os
os.system('yum -y yum-plugin-nvidia nvidia-detect')
nvidia='kmod-nvidia'
nvidia_340='kmod-nvidia-340xx'
chk_nvidia=(os.popen('nvidia-detect').read()).rstrip()
print chk_nvidia
if chk_nvidia == nvidia:
print 'nvidia'
os.system('yum -y kmod-nvidia')
if chk_nvidia == nvidia_340:
print 'nvidia-340-xxx'
os.system('yum -y kmod-nvidia-340xx')
我想 运行 nvidia 检测并捕获列表或字符串中的输出,我可以将输出与我需要的进行字符串比较。 我需要知道系统是否需要 kmod-nvidia 或 kmod-nvidia-340xx。
我已经搜索并提出了两种捕获 nvidia-detect 输出的可能方法。
我的初始代码是:
test=str(os.system('nvidia-detect'))
print test
我的输出是: kmod-英伟达 256
其中 256 是测试值。
所以在搜索之后我尝试了:
test2=subprocess.check_output('nvidia-detect', shell=True)
并得到这个错误:
Traceback (most recent call last):
File "/home/emmdom/PycharmProjects/mycode/nvidia_update.py", line 8, in <module>
test2=subprocess.check_output('nvidia-detect')
AttributeError: 'module' object has no attribute 'check_output'
我成功了,这就是最终对我有用的东西。谢谢
import os
os.system('yum -y yum-plugin-nvidia nvidia-detect')
nvidia='kmod-nvidia'
nvidia_340='kmod-nvidia-340xx'
chk_nvidia=(os.popen('nvidia-detect').read()).rstrip()
print chk_nvidia
if chk_nvidia == nvidia:
print 'nvidia'
os.system('yum -y kmod-nvidia')
if chk_nvidia == nvidia_340:
print 'nvidia-340-xxx'
os.system('yum -y kmod-nvidia-340xx')