2015-10-29 61 views
0

conky中的if-elseif-else构造无法正常工作。当我连接到wifi时,它应显示“无线”,当我连接到有线局域网时显示“有线”,当我没有网络连接时显示“无网络”。这是我这是不正常的Conky代码:conky中的if-else语句无法正常工作

${if_existing /proc/net/route wlan0}${color grey}wireless\ 
${else}\ 
${if_existing /proc/net/route eth0}${color grey}wired\ 
${else}\ 
${color grey}no network\ 
${endif} 

的问题是,如果我有一个无线连接,没有从我的conkyrc上面写的行执行后。如果没有网络连接,它正在工作。

什么工作虽然,如果我只用一条if-else结构:

${if_existing /proc/net/route wlan0}${color grey}wireless\ 
${else}\ 
${color grey}no network\ 
${endif} 

什么我在第一个片段做错了什么?

回答

0

好吧,答案很简单......我不知道我需要关闭每一个单独的。所以,这里是工作代码:

${if_existing /proc/net/route wlan0}${color grey}wireless\  
${else}\ 
${if_existing /proc/net/route eth0}${color grey}wired\ 
${else}\ 
${color grey}no network\ 
${endif}\ 
${endif} 
0

如果能有所帮助的话,这里是我的USB Conky的结构(4种不同的USB和“无USB”的情况):

${if_existing /media/me/1}1${fs_used_perc /media/me/1}%${else}\ 
${if_existing /media/me/2}2${fs_used_perc /media/me/2}%${else}\ 
${if_existing /media/me/3}3${fs_used_perc /media/me/3}%${else}\ 
${if_existing /media/me/4}4${fs_used_perc /media/me/4}%${else}\ 
No Usb${endif}${endif}${endif}${endif} 
+0

是的,这与我的答案是一致的:每个if都需要明确地关闭 – Alf