我正在尝试让 conky 在我的系统上工作,但我一直困惑于如何格式化特定的 shell 变量来显示我的 VGA。从 shell 中我使用以下命令获取 VGA:
lspci | grep VGA
输出:
01:00.0 VGA 兼容控制器:NVIDIA Corporation G71M [GeForce Go 7900 GS](rev a1)
为了我的目标,我需要将此输出格式化为以下内容:([] 内的内容)
GeForce Go 7900 GS
这个想法是这对于每个用户来说应该是动态的(我不愿意对其进行硬编码)。
第二个输出是关于当前驱动程序的。我从这个输出中获取信息:
glxinfo | more | grep "renderer string"
最后一个非常适合:
${voffset 2}${font StyleBats:size=10}${color2}d${voffset -2}${font DroidSans:size=8.6}${color3}${offset 5}nVidia GeForce 7600 GT${alignr}${font DroidSans:size=8.3}${pre_exec glxinfo | more | grep 'renderer string' | awk -F':' '{print $2}'}${font}
输出:
NV49 上的镓 0.4
如果我找到如何格式化第一个变量,最终输出将是:
NV49 上的 GeForce Go 7900 GS Gallium 0.4
谢谢指教!!!
答案1
lspci | awk -F'[][]' '/VGA/{print $2}'
如果字段分隔符设置为[
and]
且模式为VGA
,则打印第二个字段(即[..]
.