그것을 반복하는 방법이 있습니까 conky
? 예를 들어, CPU 로드를 표시하는 스크립트가 있는데 .conky
다른 시스템으로 이동할 때 이를 재구성해야 합니다. 이와 같은 간단한 스크립트
sudo grep "processor" /proc/cpuinfo | wc -l
코어 수에 대한 정보를 제공합니다.아마도예를 들어 루프에 사용됩니다.
${cpu cpu{1}}
답변1
저는 conky/lua 전문가가 아니므로 더 좋은 방법이 있을 수 있지만 이 방법은 효과가 있습니다. ~/mylua.lua
다음을 포함하는 파일에 lua 스크립트를 생성 해야 합니다.
local file = io.popen("grep -c processor /proc/cpuinfo")
local numcpus = file:read("*n")
file:close()
listcpus = ""
for i = 1,numcpus
do listcpus = listcpus.."${cpu cpu"..tostring(i).."} "
end
function conky_mycpus()
return listcpus
end
그런 다음 섹션에 줄을 ~/.conkyrc
추가하십시오.conky.config={
lua_load = '~/mylua.lua',
(또는 1.10 이전의 conky 버전의 경우 lua_load ~/mylua.lua
) CPU 값을 얻으려는 위치에서는 다음 줄을 사용합니다.
${lua_parse conky_mycpus}
conky가 시작되면 lua 스크립트가 실행되고 변수는 예를 들어 grep에서 찾은 프로세서 수에 따라 listcpus
적절한 문자열이 됩니다 ."${cpu cpu1} ${cpu cpu2}"
답변2
새 줄을 추가하는 것을 잊지 마십시오. 그렇지 않으면 최신 conky에서 원치 않는 결과가 발생할 수 있습니다.
한 줄에 여러 개의 루아를 로드하는 것도 중요합니다.
예:
~/.conky/lua/cpu.lua
function conky_mycpus()
local file = io.popen("grep -c processor /proc/cpuinfo")
local numcpus = file:read("*n")
file:close()
listcpus = ""
for i = 1,numcpus
do listcpus = listcpus.."${offset 15}Core "..tostring(i).." ${color ff8300}${cpubar cpu"..tostring(i).." 6}${color FFFDE2}\n"
end
return listcpus
end
완전히 적재 된
lua_load = "/usr/local/share/lua/5.3/corky.lua ~/.conky/lua/cpu.lua",
하나의 lua_load에 모든 lua 파일을 로드하지 않으면 "NIL 예외"가 발생할 수 있습니다.