liten "ledigt utrymme" function till conky

Här diskuteras programmering och utveckling
narius
Inlägg: 9
Blev medlem: 26 okt 2007, 21:23
OS: Ubuntu
Utgåva: 14.04 Trusty Tahr LTS

liten "ledigt utrymme" function till conky

Inlägg av narius »

Har fixat en liten funktion för conky. Den visar ledigt utrymme på alla enheter som finns med i fstab.

free.py

Kod: Markera allt

#!/usr/bin/python
import os
#os.popen('df -h /media/C > free_c.txt')
f = open('/etc/fstab', 'r')
for line in f:
        if line[0]!='#':
                line=line.split(' ')
                if len(line)>1:
                        if line[1]!='none':
                                #print line[1]
                                command="df -h "+line[1]
                                #print command
                                os.popen("df -h "+line[1]+" >temp.txt")
                                temp=open('temp.txt','r')
                                temp.readline()
                                output=temp.readline()
                                output=output.split()
                                print line[1]+"         "+output[3]
tilläg till .conkyrc

Kod: Markera allt

${execi 86400 python /home/marcus/scripts/free.py}
Ni som vill får gärna komma med ideeer kring hur man får "snyggare" utskrift. typ enhet vänster justerat och ledigt utrymme höger justerat.
Användarvisningsbild
Smygis
Inlägg: 849
Blev medlem: 21 jun 2006, 18:41
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS
Ort: Kramfors

Re: liten "ledigt utrymme" function till conky

Inlägg av Smygis »

Du verkar springa cirklar runt en rak lösning. Så jag skrev en egen version.

Output från din version:

Kod: Markera allt

robin@lappy:~$ python free.ubuntu-se.py 
         8,5G
/         8,5G
/home         4,4G
/windows         3,1G
         8,5G
Output från min version.

Kod: Markera allt

robin@lappy:~$ python free.ubuntu-se.mine.py 30
Disc                      Free
/                         8,5G
/home                     4,4G
/windows                  3,1G
/media/disk                18G
/media/disk-1              13G
/media/disk-2             221M
/media/disk-3             300M
Och såhär ser den ut:

Kod: Markera allt

#!/usr/bin/env python
# coding: UTF-8

import os
import sys

col = int(sys.argv[1])
info = ("Free", "Disc")

data = os.popen("df -h").readlines()
data = filter(lambda x: x[0]=="/", data)

print "%s%s%s" % (info[1], " "*(col-len("".join(info))), info[0])

for i in data:
    i = i.split()
    p = len(i[3]+i[5])
    print "%s%s%s" % (i[5], " "*(col-p), i[3])
A Foolish Consistency is the Hobgoblin of Little Minds.Beware: In C++, your friends can see your privates!
narius
Inlägg: 9
Blev medlem: 26 okt 2007, 21:23
OS: Ubuntu
Utgåva: 14.04 Trusty Tahr LTS

Re: liten "ledigt utrymme" function till conky

Inlägg av narius »

tack, var en betydligt kompaktare lösning.

/Marcus
Skriv svar

Återgå till "Programmering och webbdesign"