Πως μπορείτε να μετατρέψετε την επιφάνεια εργασίας από την εικόνα α στην εικόνα β ?
Το GeekTool είναι ένα πρόγραμμα που μας επιτρέπει να κάνουμε τέτοιες τροποποιήσεις στο Desktop μας.
Το συγκεκριμένο Desktop είναι το δικό μου με μερικές πληροφορίες που δυναμικά ζωγραφίζονται επάνω στο wallpaper μερικά παραδείγματα μπορείτε να δείτε στην εικόνα (ώρα, ημερομηνία και ήμερα).
Ας δούμε το πως όμως …
Φυσικά το πρώτο μας βήμα είναι να κατεβάσουμε το GeekTool 2.1 και να κάνουμε διπλό κλικ στο εικονίδιο του μια κίνηση που θα έχει σαν αποτέλεσμα να γίνει εγκατάσταση του GeekTool στο Preferences Panel που είναι και ο προορισμός μας για τις ρυθμίσεις του προγράμματος.
Εκεί διαλέγουμε το Shell όπως βλέπετε και στην εικόνα, και στο πλαίσιο από κάτω είναι το μέρος που περιμένει για τις εντολές μας, και λέγοντας εντολές δεν μιλάω μεταφορικά μιας και το GeekTool δουλεύει με εντολές Shell, όπως δηλαδή και το terminal.
Ας δούμε πως μπορούμε να προβάλουμε την ώρα στο desktop μας. Αυτό γίνεται πολύ απλά γράφοντας στο πλαίσιο το έξης : date ‘+%H:%M’ αφού έχουμε κάνει κλικ στο πλήκτρο New Entry. Αφού γράψαμε την εντολή μας μπορούμε να τροποποιήσουμε το πως θα εμφανίζετε το αποτέλεσμα της. Αυτό γίνεται από τα Tabs που βρίσκονται δίπλα από το Tab με το όνομα Command και περισσότερη δύναμη κρύβει το Colors And Font που μας δίνει την δυνατότητα να αλλάξουμε την γραμματοσειρά καθώς και το χρώμα που θα προβάλετε η ώρα στην επιφάνεια εργασίας μας.
Τέλος θα πρέπει να κάνουμε ένα κλικ στο Enable GeekTool.
Σίγουρα αυτό είναι ένα πολύ μικρό κομμάτι από το τι μπορεί να κάνει το GeekTool, μιας και πραγματικά δεν υπάρχουν όρια στο τι μπορεί να κάνει κάποιος στο desktop του με αυτό το εργαλείο.
Kaloooo….
Exei vgei kai mia pio kainourgia ekdosi, i opoia exei diaforetiko interface kai tropo xrisis… Kaloutsiko pantws…
Παιδιά.. σε λίγο να τραβήξω τα scripts μου από τον ftp να δείτε κάτι μαγκιές για geektool, gmail checking και άλλες καφρίλες! 😀
brb..
Λοιπόν.. το 1ο είναι cpu usage
echo " CPU"
top -l 2 | awk '/CPU usage/ && NR > 5 {print "", $8, $9="user","\n",$10, $11="sys","\n",$12, $13}' > cpu.txt
cat cpu.txt && rm cpu.txt
δίνει το αποτέλεσμα..
CPU
69.72% user
5.96% sys
24.31% idle
το έκανα να βγάζει το αρχείο γιατί κάτι μου κολλούσε στο script και μετά το κάνει cat για να το εμφανίσει, δουλεύει μια χαρά..
Επειδή φαίνεται ότι εγώ τα τρέχω μέσα από .sh scripts, δλδ τα σώζω σε scripts και λέω του geektool να τα τρέξει ώστε να μην έχω την ανάγκη να αλλάζω το geektool αλλά μόνο το script όταν χρειάζεται! 😛 (σωστός? :D)
Λοιπόν και το 2ο το οποίο ζητάει το υπόλοιπο από τον/τους δίσκο/υς..
echo HD
df -h | grep disk0s2 | awk '{print $3, "of", $2}' | sed 's/Gi/Gb/g';
df -h | grep disk0s2 | awk '{print $4, "left"}' | sed 's/Gi/Gb/g';
που δίνει το αποτέλεσμα..
HD
98Gb of 150Gb
52Gb left
Το 3ο εμφανίζει την μνήμη, ελεύθερη και μη!
top -l 1 | awk '/PhysMem/ {print "Used: " $8}'
top -l 1 | awk '/PhysMem/ {print "Inactive: " $6+$10"M"}'
με αποτέλεσμα..
Used: 3913M
Inactive: 2912M
______________________________________
Το 4ο είναι script που κάνει ping local ips γιατί βρήσκομαι σε δίκτυο τοπικό αλλά και ευρίας ασύρματο το AWMN (www.awmn.net), για να δούμε περνάνε τα ping ή έχει πέσει κάποιος..
echo "Pings"
echo "iMe" `ping -t 1 somnius.ath.cx | grep from | awk '{print $4}' | sed 's/://';`
echo "Wme " `ping -t 3 somnius.awmn | grep icmp_seq=2 | awk '{print $7,"ms"}' | sed 's/time=//';`
echo "www.awmn" `ping -t 3 www.awmn | grep icmp_seq=2 | awk '{print $7,"ms"}' | sed 's/time=//';`
echo "asxetos " `ping -t 3 asxetos.awmn | grep icmp_seq=2 | awk '{print $7,"ms"}' | sed 's/time=//';`
echo "webtv.aw" `ping -t 3 webtv.awmn | grep icmp_seq=2 | awk '{print $7,"ms"}' | sed 's/time=//';`
Και δίνει το αποτέλεσμα
Pings
iMe 1.345 ms
Wme 0.262 ms
www.awmn 0.746 ms
(πλασματικα ms)
Ούφ πάμε για το 5ο…
Scriptάκι που δίνει uptime και χρήστες, δλδ πόσο καιρό είναι ανοιχτό το μηχάνιμά σας και πόσοι χρήστες είανι συνδεμένοι σε αυτό, αν το παίζετε multiuser, έστω και remotely!
uptime | awk '{print "Uptime : " $3 " " $4 " " $5 }' | sed -e 's/.$//g'
Με αποτέλεσμα..
Uptime : 1:34, 2 users
_______________________________________
Το 6ο, είναι λίγο πιο ψαγμένο.. και χρησιμοποιεί την python μέσα από shell script.. παραθέτω..
#!/usr/bin/env python
# encoding: utf-8
# Copyright (c) 2009 Greg Newman
import os
import imaplib,re
import sys
def main(argv=None):
i=imaplib.IMAP4_SSL('imap.gmail.com')
try:
i.login("GMAIL-LOGIN","GMAIL-PASSWORD")
x,y=i.status('INBOX','(MESSAGES UNSEEN)')
messages=int(re.search('MESSAGES\s+(\d+)',y[0]).group(1))
unseen=int(re.search('UNSEEN\s+(\d+)',y[0]).group(1))
print "%s Unread" % (unseen)
except:
pass
if __name__ == '__main__':
sys.exit(main())
Αλλάζοντας το GMAIL-LOGIN με το δικό σας login χωρίς το @gmail.com, π.χ. [email protected] θα το γράψετε στο script tomailmou και στο GMAIL-PASSWORD θα εισάγετε τον κωδικό σας. Αυτό όλο θα το πακετάρετε σε ένα scriptάκι ή μπορείτε να το εισάγετε κατευθείαν μέσα στο geektool. Θα καλέσει την python θα μιλήσει με το imap.gmail.com και θα πάρει αποτέλεσμα.. το οποίο είναι..
9 Unread
Απλά…. και όμορφα..
[…] η μόνη λύση για να βλέπουμε την ώρα στο Desktop μας (βλέπε geektool) αλλά είναι η πιο απλή και […]