Geektool: Unterschied zwischen den Versionen

Aus d0b
Zur Navigation springenZur Suche springen
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
== Meine Geeklets==
+
[[Kategorie:Mac]]
  
 +
[[Datei:geektool_desktop1.png|200px|thumb|right|Mein Geektool Desktop]]
 +
[[Datei:geektool_desktop2.png|200px|thumb|right|Mein Geektool Desktop in Bearbeitung]]
 +
 +
== Geektool ==
 +
Geektool ist ein nettes Program, welches System Informationen und mehr, über 3 verschiedene
 +
Plugin Varianten (Shell, File, Image) einblenden kann. Ein Skript für Geektool nennt sich
 +
übrigens Geeklet.
 +
 +
* [http://projects.tynsoe.org/en/geektool/ Geektool Download]
 +
* [http://www.macosxtips.co.uk/geeklets/ Geeklets Page]
 +
 +
Man sollte darauf achten das die "refresh"-Zeiten passend zu dem jeweiligen Skript sind,
 +
wir wollen unser System z.B. nicht jede Sekunde fragen was für n Tag heute ist.
 +
 +
Auf den abgebildeten Desktop, ist in der Mitte links ein weiteres Programm zu sehen welches sich
 +
[http://www.atpurpose.com/atMonitor/ atmonitor] nennt, das hat jedoch nichts mit Geektool zu tun.
 +
 +
 +
== Geeklets==
 
=== HD Kapazität & Ram Frei ===  
 
=== HD Kapazität & Ram Frei ===  
 
<pre>df -Hl | grep 'disk0s2' | awk '{print "HD: "$2 "B / Frei: " $4"B  ("$5" Voll)"}'
 
<pre>df -Hl | grep 'disk0s2' | awk '{print "HD: "$2 "B / Frei: " $4"B  ("$5" Voll)"}'
Zeile 6: Zeile 25:
 
</pre>
 
</pre>
  
=== Letztes Tiemmachine Backup ===  
+
=== Letztes Timemachine Backup ===  
 
<pre>printf "Last TM Backup: " && defaults read /private/var/db/.TimeMachine.Results BACKUP_COMPLETED_DATE | awk '{print $1 " " $2}'</pre>
 
<pre>printf "Last TM Backup: " && defaults read /private/var/db/.TimeMachine.Results BACKUP_COMPLETED_DATE | awk '{print $1 " " $2}'</pre>
  
Zeile 59: Zeile 78:
  
  
=== Ical Todo Liste (benötigt [http://hasseg.org/icalBuddy/ Icalbuddy]) ===
+
=== Ical Todo Liste ===
 +
(benötigt [http://hasseg.org/icalBuddy/ Icalbuddy])
 
<pre>/usr/local/bin/icalBuddy -nc -li 3 -npn uncompletedTasks</pre>
 
<pre>/usr/local/bin/icalBuddy -nc -li 3 -npn uncompletedTasks</pre>
  
=== Ical Kalenderauszug von heute (benötigt [http://hasseg.org/icalBuddy/ Icalbuddy]) ===
+
=== Ical Kalenderauszug von heute ===
 +
(benötigt [http://hasseg.org/icalBuddy/ Icalbuddy])  
 
<pre>/usr/local/bin/icalBuddy -nc -npn eventsToday | sed -e "s/*/--/" | sed -e "s/!/!!/"</pre>
 
<pre>/usr/local/bin/icalBuddy -nc -npn eventsToday | sed -e "s/*/--/" | sed -e "s/!/!!/"</pre>
  
Zeile 76: Zeile 97:
 
's/Mix/wechselhaft/g' -e 's/Wintry/winterlich/g' -e 's/to/oder/g' -e 's/Mist/leichter Nebel/g'</pre>
 
's/Mix/wechselhaft/g' -e 's/Wintry/winterlich/g' -e 's/to/oder/g' -e 's/Mist/leichter Nebel/g'</pre>
  
=== Fuzzy Clock auf Kölsch ===  
+
=== Fuzzy Clock op Kölsch ===  
 
<pre>#!/usr/bin/osascript
 
<pre>#!/usr/bin/osascript
  

Aktuelle Version vom 20. Oktober 2011, 12:16 Uhr


Mein Geektool Desktop
Mein Geektool Desktop in Bearbeitung

Geektool

Geektool ist ein nettes Program, welches System Informationen und mehr, über 3 verschiedene Plugin Varianten (Shell, File, Image) einblenden kann. Ein Skript für Geektool nennt sich übrigens Geeklet.

Man sollte darauf achten das die "refresh"-Zeiten passend zu dem jeweiligen Skript sind, wir wollen unser System z.B. nicht jede Sekunde fragen was für n Tag heute ist.

Auf den abgebildeten Desktop, ist in der Mitte links ein weiteres Programm zu sehen welches sich atmonitor nennt, das hat jedoch nichts mit Geektool zu tun.


Geeklets

HD Kapazität & Ram Frei

df -Hl | grep 'disk0s2' | awk '{print "HD: "$2 "B / Frei: " $4"B  ("$5" Voll)"}'
top -l 1 | awk '/PhysMem/ {print "RAM Frei : " $10 " "}'

Letztes Timemachine Backup

printf "Last TM Backup: " && defaults read /private/var/db/.TimeMachine.Results BACKUP_COMPLETED_DATE | awk '{print $1 " " $2}'

WAN IP

wip=`curl --silent http://checkip.dyndns.org | awk '{print $6}' | cut -f 1 -d "<"`
echo "WAN: $wip"

LAN & WLAN Status

#!/usr/bin/perl
$en0_info = `ifconfig en0 | grep "inet" | grep -v 127.0.0.1`;
$en1_info = `ifconfig en1 | grep "inet" | grep -v 127.0.0.1`;
#$ext_info = `curl --silent http://checkip.dyndns.org | awk '{printf $6}' | cut -f 1 -d "<" | tr -d 'n'`;
$airport_network = `/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I | awk -F: '/SSID/  {print $2}'`;

if($en0_info)
{
	$en0_info =~ /inet (.*) netmask/s;
	$output .= "en0:  $1 \n";
}
else
{ $output .= "en0: xxx.xxx.xxx.xxx \n";}

if($en1_info)
{
	$en1_info =~ /inet (.*) netmask/s;
	$en1_info = $1;
	$output .= "en1: $en1_info \n\n $airport_network \n";
}
else
	{ $output .= "en1: xxx.xxx.xxx.xxx \n";}


print "$output"; 

Uptime

uptime | awk '{print "UPTIME  : " $3 " " $4 " " $5 " " }'; 

Batterie Status

my_ac_adapt=`ioreg -w0 -l | grep ExternalConnected | awk '{print $5}'` 
if [ "$my_ac_adapt" == "Yes" ] 
then 
echo "Power : External" 
else 
cur_power=`ioreg -w0 -l | grep CurrentCapacity | awk '{print $5}'` 
max_power=`ioreg -w0 -l | grep MaxCapacity | awk '{print $5}'` 
bat_percent=`echo "scale=2;$cur_power / $max_power" | bc` 
bat_percent=`echo "$bat_percent * 100" | bc | sed 's/.00//'` 
cyc_count=`ioreg -w0 -l | grep "Cycle Count" | awk 'BEGIN { FS = "=" } ; {print $8}' | awk 'BEGIN { FS = "}" } ; {print $1}'` 
echo "Power : Battery ($bat_percent%)" 
echo "Cycles : $cyc_count" 
fi 


Ical Todo Liste

(benötigt Icalbuddy)

/usr/local/bin/icalBuddy -nc -li 3 -npn uncompletedTasks

Ical Kalenderauszug von heute

(benötigt Icalbuddy)

/usr/local/bin/icalBuddy -nc -npn eventsToday | sed -e "s/*/--/" | sed -e "s/!/!!/"

Wetter für heute (muss natürlich angepasst werden)

curl --silent "http://weather.yahooapis.com/forecastrss?p=GMXX4675&u=c" |
grep -E '(Current Conditions:| C<BR)' |
sed -e 's/Current Conditions://' -e 's/<br \/>//' -e 's/<b>//' -e 's/<\/b>//' -e 's/<BR \/>//' -e 's/<description>//' -e 
's/<\/description>//' -e 's/Fair/heiter/g'  -e 's/Partly/teilweise/g' -e 's/Sunny/sonnig/g' -e 's/Mostly/meist/g' -e 's/Light/leichter/g'
 -e 's/Rain/Regen/g' -e 's/Showers/Schauer/g' -e 's/T-showers/Gewitter/g' -e 's/Mostly/meist/g' -e 's/Scattered/vereinzelt/g' -e 
's/Showers Late/abends Schauer/g' -e 's/AM/vormittags/g' -e 's/PM/nachmittags/g' -e 's/Clear/klar/g' -e 's/Cloudy/bewoelkt/g' -e 
's/Wind/windig/g' -e 's/Few/gelegentlich/g' -e 's/Thunderstorm/Gewittersturm/g' -e 's/Thunder/Gewitter/g' -e 's/Snow/Schnee/g' -e
 's/Fog/Nebel/g' -e 's/Early/morgens/g' -e 's/Late/abends/g' -e 's/Drizzle/Niesel/g' -e 's/Isolated/isoliert/g' -e 
's/Mix/wechselhaft/g' -e 's/Wintry/winterlich/g' -e 's/to/oder/g' -e 's/Mist/leichter Nebel/g'

Fuzzy Clock op Kölsch

#!/usr/bin/osascript

set hrs to do shell script "date +%l"
set min to do shell script "date +%M"
set numwrds to {"Ens", "Zwei", "Drei", "Vier", "Fuennef", "Sechs", "Sibbe", "Aach", "Nueng", "Zehn", "Elf", "Zwölf", "Druecksehn", 
"Veezehn", "Fuffzehn", "Sechssehn", "Sibbezehn", "Aachzehn", "Nuengzehn", "Zwanzich", "Enunzwanzich", "Zweiunzwanzich", "Dreiunzwanzich", 
"Veeunzwanzich", "Fuennfunzwanzich", "Sechsunzwanzich", "Sibbeunzwanzich", "Aachunzwanzich", "Nuengunzwanzich", "halb"}
set headr to "Et is "
if min = 0 then
	set hr to item hrs of numwrds
	return headr & hr & " o'clock."
else if min < 31 then
	set hr to item hrs of numwrds
	set mn to item min of numwrds
	return headr & mn & " noh " & hr & "."
else
	set hr to item (hrs + 1) of numwrds
	set mn to item (60 - min) of numwrds
	return headr & mn & " vür " & hr & "."
end if

About the Mac

echo `sw_vers -productName` \(v`sw_vers -productVersion`\) - `sysctl -n hw.model`; echo `sysctl -n machdep.cpu.brand_string |
 sed -e 's/([^)]*)//g' | tr '@' '-'`