ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.
WikiConkySkripte

Skripte

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Conky ist leicht durch Skripte erweiterbar, von denen man viele im Netz findet, wenn man sie nicht gerade selber schreiben mag. Außerdem verfügt Conky über Lua-Unterstützung mit imlib2- {en} und Cairo-Bindings.

Über das Element ${execi SEKUNDEN BEFEHL} lassen sich in der Conky-Konfiguration Befehle, Skripte oder Einzeiler wiederholt ausführen, deren Ausgabe von Conky angezeigt wird.

Kalender

Ein kleines Beispiel, um einen Kalender für den aktuellen Monat zu erzeugen:

${color red}Kalender ${hr 2}$color
${execpi 60 DJS=`date +%_d`; cal | sed s/"\(^\|[^0-9]\)$DJS"'\b'/'\1${color red}'"$DJS"'$color'/}}

Quelle: Conky Calendar with Date Highlight {en}

Öffentliche IP

Die Einbindung eines externen Skriptes in der Conky-Konfigurations-Datei soll im Vergleich zu einer vorhandenen Funktion dargestellt werden. Die vorhandene Funktion ist das Anzeigen der lokalen IP, das Skript gibt die öffentliche (globale) IP aus.

Zuerst wird ein Shell-Skript erstellt [1]:

1
2
3
4
5
#!/bin/bash
# eigene öffentliche ip anzeigen

wget http://checkip.dyndns.org/ -q -O - |
grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'

Anstatt http://checkip.dyndns.org/ kann man natürlich auch

  • http://whatismyip.org/

  • http://wieistmeineip.net/

  • http://www.myipaddress.com/

  • http://wieistmeineip.de/

oder ähnliche Dienste eintragen.

Das Skript wird als ~/.conky/publicip.sh gespeichert und die Ausführung als Programm muss erlaubt werden [2]. Im TEXT-Abschnitt der .conkyrc kann dann folgende Zeile ergänzt werden, um die lokale und globale IP anzuzeigen, wobei die globale IP alle 7200 Sekunden (zwei Stunden) ermittelt wird:

IP : Lokal: ${addr eth0} ${offset 10} Global: ${execi 7200 ~/.conky/publicip.sh}

Einfachere Möglichkeit

Eine weitere Möglichkeit die öffentliche IP anzuzeigen ohne ein weiteres Skript zu erstellen ist auch vorhanden.

Im TEXT-Abschnitt der .conkyrc kann dann folgendes ergänzt werden.

IPv4:

IPv4 global: ${execi 7200 wget http://v4.ipv6-test.com/api/myip.php -q -O -}

IPv6:

IPv6 global: ${execi 7200 wget http://v6.ipv6-test.com/api/myip.php -q -O -}

Einbinden von vnStat

Das Einbinden von vnStat ist sinnvoll, wenn man den Datenverkehr über einen bestimmten Zeitraum (Tag, Woche, Monat, Jahr) erhalten will.

Dazu installiert [1] man erst einmal das Paket

  • vnstat (universe)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install vnstat 

sudo aptitude install vnstat 

und legt fest, welche Netzwerkschnittstelle überwacht werden soll (Näheres zur Installation/Konfiguration erfährt man im vnStat-Artikel). Die folgenden Beispiele zeigen, wie man vnStat letztendlich in die .conkyrc einbinden kann:

Für den heutigen Traffic:

Heute:
Down: ${execi 300 vnstat | grep "today" | awk '{print $2 $3}'} ${alignr}Up: ${execi 300 vnstat | grep "today" | awk '{print $5 $6}'}

Für den Traffic der gesamten Woche:

Diese Woche:
Down: ${execi 300 vnstat -w | grep "current week" | awk '{print $3 $4}'} ${alignr}Up: ${execi 300 vnstat -w | grep "current week" | awk '{print $6 $7}'}

Für den Traffic des gesamten Monats;

Traffic ${time %B}: 
Down: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $3 $4}'} ${alignr}Up: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $6 $7}'}

...und schließlich noch ein Beispiel für die Angabe des gesamten Traffics in einem Monat:

Traffic ${time %B}: ${execi 300 vnstat -m | grep "`LC_ALL=C date +"%b '%y"`" | awk '{print $9 $10}'}

Beispiel für die Ausgabe (gesamt im Monat):

Traffic November: 12,45GB

Anzeige verfügbarer Updates

Möchte man sich die Anzahl der verfügbaren Updates anzeigen lassen, so hat man diverse Möglichkeiten dazu. Die einfachste benötigt keinerlei weitere Eingriffe ins System und ist zu bevorzugen:

${execi 1800 aptitude search "~U" | wc -l} Updates

Conky Hardcore PPA

Das Conky Hardcore Team {en} stellt verschiedene Conky-Skripte als Pakete für Ubuntu-Versionen bis einschließlich Ubuntu 11.04 zur Verfügung [3].

Adresszeile zum Hinzufügen des PPAs:

  • ppa:conkyhardcore/ppa

Hinweis!

Zusätzliche Fremdquellen können das System gefährden.


Ein PPA unterstützt nicht zwangsläufig alle Ubuntu-Versionen. Weitere Informationen bietet die Wiki/Vorlagen/PPA/ppa.png PPA-Beschreibung vom Benutzer/Team conkyhardcore.

Damit Pakete aus dem PPA genutzt werden können, müssen die Paketquellen neu eingelesen werden.

Folgende Pakete können nun nach Bedarf installiert werden [4]:

  • conkypidgin (ppa, Informationen der Pidgin Buddy-Liste abrufen)

  • conkybanshee (ppa, Banshee Anzeige)

  • conkyexaile (ppa, Exaile Anzeige)

  • conkygooglereader (ppa, Google Reader Skript (RSS))

  • conkydeluge (ppa Deluge Torrent Anzeige)

  • conkygooglecalendar (ppa, Google Kalendar Skript zur Anzeige von Ereignissen)

  • conkyrhythmbox (ppa, Rhythmbox Anzeige)

  • conkyemail (ppa, E-Mail-Eingangs-Zähler mit ssl-Unterstützung)

  • conkytext (ppa, "Delimited text file formatting" über eine Vorlage)

  • conkyforecast (ppa, Forecast Wetter Skript mit Unterstützung für Sprache-Dateien)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install conkypidgin conkybanshee conkyexaile conkygooglereader conkydeluge conkygooglecalendar conkyrhythmbox conkyemail conkytext conkyforecast 

sudo aptitude install conkypidgin conkybanshee conkyexaile conkygooglereader conkydeluge conkygooglecalendar conkyrhythmbox conkyemail conkytext conkyforecast 

Die Einstellungen für Conky können den Beispielen unter /usr/share/conkySKRIPTNAME/examples/ entnommen werden.

ubuntuusers.local › WikiConkySkripte