Quarky Posté(e) le 26 octobre 2006 Partager Posté(e) le 26 octobre 2006 Bonjour @ tous, Je suis très heureux de pouvoir enfin publier ce topic qui en ravira très certainement plus d'un. J'espère que vous saurez l'apprécier vu le temps passé pour développer le contenu tout comme sa mise en forme Sommaire 1- Présentation 2- Liens 3- Exemple de résultats 4- Tuto rapide 5- Les scripts - Scripts simples (une commande = une valeur) - Scripts élaborées (externalisés de GeekTool) - Les graphs - Inutiles donc INdispensables Présentation Je viens donc vous présenter un outil particulier nommé GeekTool. En gros, Il permet d'afficher sur le bureau diverses informations obtenues par commande shell, de visualiser le contenu d'un fichier ou une image. En fait les possibilités sont énormes et vous pourrez vous en rendre compte de vous même. Ceux étant précédemment passé sous Windows connaissent peut être Samurize, et les Linuxiens ont aussi un équivalent avec Conky (cf. le tuto de nonas ). Et bien GeekTool a la même fonction. Le soft permet donc de customizer le bureau tout en le rendant fonctionnel. Certains ne seront surement pas convaincus par la chose mais imaginez avoir un contrôle permanent pour le pourcentage du DD occupé. Ou bien le pourcentage de batterie qu'il reste (sur portable évidemment), les processus les plus "gourmants", le titre et la pochette du morceau joué par iTunes, ... Et ce qu'il y a de très sympa, c'est que l'affichage est modifiable à souhait. Vous pourrez placer les items ou bon vous semble et de la manière dont il vous plaira. Liens Site officiel Présentation par Hyp Par la suite, je vais vous proposer les scripts que j'ai pu trouver lors de mes recherches initiales ainsi que tous ceux que j'ai moi même mis au point. Vous pourrez remarquer que certains ne sont compatibles qu'à l'une des deux plateformes existantes (powerpc et macintel). Je dois aussi signaler que mes essais ont été uniquement réalisé sous Tiger. Si, malgré mes tests, des commandes ne fonctionnaient pas sur votre machine, merci de me le signaler. Et si vous souhaitez des explications sur une commande ou désirez une modification faites-le moi savoir ici. N'hésitez pas à participer en postant des aperçus de vos réalisations et les commandes que vous utilisez Et toute remarque constructive sur le fond et/ou la forme est la bienvenue Je remercies white-rabbit, weepdoo, falou, eldraco, francois_75015 pour leur contribution "à l'aveugle" Et à nouveau Hyp pour son tuto. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 26 octobre 2006 Auteur Partager Posté(e) le 26 octobre 2006 Exemples de résultats Je vous renvois à la gallerie du site officiel pour en voir plus. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 26 octobre 2006 Auteur Partager Posté(e) le 26 octobre 2006 Tuto 1 : Créer, dupliquer ou effacer des paramètres 2 : Activer ou désactiver l'affichage des paramètres 3 : Modifier le type de sortie - commande Shell, image ou fichier texte 4 : Positionner précisement l'affichage Merci à Hyp pour ce petit tuto Et une présentation vidéo : Geek Tool: Getting Started. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 26 octobre 2006 Auteur Partager Posté(e) le 26 octobre 2006 Scripts simples RAM utilisée top -l 1 | awk '/PhysMem/ {printf "RAM : " $8 }' Swap du -ksh /private/var/vm Trio processus gourmants ps -arcx -o %cpu,command | awk ' { if (FNR <= 4 && $1 != "%CPU" && $1 != "0.0") { printf("%c%c%3.1f%% ", ($1 < 100 ? " " : ""), ($1 < 10 ? " " : ""), $1); for (i = 2; i <= NF; i++) { printf("%s ", $i); } printf("\n"); } }' Date et Heure du dernier boot sysctl -a | awk -F "= " '/boottime/ {print $2}' | awk '{print $1 " " $3 " " $2 " " $5 ", " $4}' system_profiler | awk -F ": " '/Last Run/ {print $2}' Processeur Vérifier éventuels probs de droits utilisateur % utilisation CPU top -l 2 | awk '/CPU usage/ && NR > 5 {print $6, $7=":", $8, $9="user", $10, $11="sys", $12, $13}' Température (MBP) sysctl -a | awk -F ": " '/cpu_temp:/ {print $2}' Fréquence courante (MBP) sysctl -a | awk -F ": " '/cpu_currentfreq/ {print $2}' iBook, iMac sysctl -a | awk -F ": " '/cpufrequency:/ {print $2}' Fréquence min (MBP) sysctl -a | awk -F ": " '/cpu_minfreq/ {print $2}' iBook, iMac sysctl -a | awk -F ": " '/cpufrequency_min/ {print $2}' Fréquence max (MBP) sysctl -a | awk -F ": " '/cpu_maxfreq/ {print $2}' iBook, iMac sysctl -a | awk -F ": " '/cpufrequency_max/ {print $2}' Infos CPU (MacIntel) sysctl -a | awk -F ": " '/cpu.brand_string/ {print $2}' Espace Disque DD (tailles explicites et %) df -h | awk '/\/dev\/disk0/ {print "DD : " $4 " libres, " $3 " utilises"}'; df -k / | tail -1 | awk '{print "Etat du disque : " $5}' df -h | awk '/disk0s2/ {print "Disk : ", $3, "/", $2, "-", $4, "available"}' Total trash size in the empty trash warning dialog How big my trash is du -sh ~/.Trash/ | awk '{print $1}' Utilisateur(s) Utilisateur en cours whoami id -nu logname Utilisateurs loggués users Dernières connexions last -n (avec n le nombre des n dernières connexions) Date / Heure Date / Heure export LANG=fr_FR; date "+%A %d/%m/%Y ~ %T " Heure date +%X Numéro du jour de l'année date +%j Fait(s) historique(s) du jour grep -h "^$(date '+%m/%d')" /usr/share/calendar/calendar.{holiday,history,computer}|cut -f2 Calendrier cal | awk '{ print " "$0; getline; print " Lu Ma Me Je Ve Sa Di"; getline; if (substr($0,1,2) == " 1") print " 1 "; do { prevline=$0; if (getline == 0) exit; print " " substr(prevline,4,17) " " substr($0,1,2) " "; } while (1) }' Web IP curl adresseip.sur-la-toile.com/ | awk -F[\ \<] '/Votre adresse IP est/ {print $6}' Nom connexion wifi utilisée ioreg -w0 -l | awk -F "= " '/APCurrentSSID/ {if ($2 != "\"\"") print $2; else print "Pas de connexion wifi utilisée"}' Connexion active ? if ping -oqc 5 www.google.fr >/dev/null 2>&1; then echo Connexion active; else echo Connexion inactive; fi Web Server Checker ping -c1 website.com | grep ' 0%' RSS (perfectible) curl "http://www.pcinpact.com/include/news.xml" | awk -F\[\<\>] '/title/ {print "- " $3}' Si en utilisant des flux d'autres sites vous rencontrez des problèmes de caractères, ajoutez ceci à la fin de la commande précédente : | iconv -f UTF-8 -t L1 Batterie (pour les portables évidemment ) Infos batterie iBook ioreg -w0 -l | grep IOBatteryInfo Infos batterie MBP ( /!\ Données brutes /!\ ) ioreg -w0 -l | grep BatteryInfo Capacity (1ere fonctionne pour tous, 2eme = que pour MB & MBP) ioreg -w0 -l | awk -F "=" '/BatteryInfo/ {print $3}' | awk -F "," '{print $1}' ioreg -w0 -l | awk -F "= " '/MaxCapacity/ {print $2}' Current (pareil... ) ioreg -w0 -l | awk -F "=" '/BatteryInfo/ {print $6}' | awk -F "," '{print $1}' ioreg -w0 -l | awk -F "= " '/CurrentCapacity/ {print $2}' Nombre de cycles (pareil... ) ioreg -w0 -l | awk -F "=" '/BatteryInfo/ {print $5}' | awk -F "," '{print $1}' ioreg -w0 -l | awk -F "= " '/CycleCount/ {print $2}' Time Remamining (MB & MBP) ioreg -w0 -l | awk -F "= " '/TimeRemaining/ {print $2}' Batterie Installée ? (MB & MBP) ioreg -w0 -l | awk -F "= " '/BatteryInstalled/ {print $2}' Batterie pleine ? (MB & MBP) ioreg -w0 -l | awk -F "= " '/FullyCharged/ {print $2}' Branché au secteur ? (MB & MBP) ioreg -w0 -l | awk -F "= " '/ExternalConnected/ {print $2}' Météo Pour avoir la météo sur votre bureau, sélectionnez "image" dans le menu déroulant et utilisez l'un des chemins suivants : Alertes météo : http://www.meteofrance.com/vigilance/cartes/derniers/mn.gif Image radar : http://image.weather.com/images/sat/france_sat_440x297.jpg Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 1 novembre 2006 Auteur Partager Posté(e) le 1 novembre 2006 Scripts élaborés Cette partie est consacré aux scripts plus complexes qu'une simple commande shell. Le code tient alors dans un fichier qu'il faut exécuter par une commande shell. Pour éviter divers problèmes, je vous recommande de placer l'ensemble des scripts "externalisés" que vous utiliserez dans un même répertoire ("Scripts_GeekTool" par exemple). Le fonctionnement est indentique pour la majorité des scripts : il faut utiliser la fonction shell de GeekTool. Si vous placez le répertoire dans Documents, il faudra alors utiliser cette commande (seulement si aucune commande n'est indiquée) : sh /Users/LOGIN/Documents/Scripts_GeekTool/ Avec LOGIN, votre nom d'utilisateur. Et n'oubliez pas de compléter pour chaque cas avec le nom du fichier téléchargé. % du volume sonore en cours % du niveau de batterie en cours Surveillance de présence de photos générées par AuthSight (tentatives d'intrusions) Titre joué dans iTunes commande : osascript /Users/LOGIN/Documents/Documents/Scripts_GeekTool/iTunes.nowplaying.scpt % de réception airport Décompressez l'archive dans le répertoire pré-cité. Deux affichages sont possibles : juste le pourcentage /Users/LOGIN/Documents/Scripts_GeekTool/airport/airport | awk 'NR == 2 {print $1}' ou avec le motif "\ \ \ \ \````` 50%". /Users/LOGIN/Documents/Scripts_GeekTool/airport/airport | awk 'NR == 2 {for (a=10;a>0;a-=1) if ($1 / 10 < a) printf("`"); else printf("\\"); print " " $1}' Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 1 novembre 2006 Auteur Partager Posté(e) le 1 novembre 2006 Graphs ... En cours de réflexion ... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 1 novembre 2006 Auteur Partager Posté(e) le 1 novembre 2006 Inutiles donc INdispensables Nom de modèle de la machine (ex: MacBookPro1.1) ioreg -w0 -l | grep "\"model\" = " | head -1 | awk '{print $4}' | sed 's/<"//' | sed 's/">//' Nom "publique" (ex: MacBook Pro 15") system_profiler | awk -F ": " '/Machine Name/ {print $2}' Numéro de série de la machine ioreg -w0 -l | awk -F "= " '/IOPlatformSerialNumber/ {print $2}' | sed 's/"//g' Architecture uname -p sysctl -a | awk -F "= " '/hw.machine/ {print $2}' OS (ex: Darwin) uname OS et version (ex: "Mac OS X 10.4.8 (8L21xx)") system_profiler | awk -F ": " '/System Version/ {print $2}' OS (ex : MAC OS X) sw_vers -productName Version ( ex: 10.4.8 ) sw_vers -productVersion Build sw_vers -buildVersion Date de l'installation du système cat /var/log/OSInstall.custom | awk '{print $4 " " $5}' Version du noyau uname -r sysctl -a | awk -F "= " '/osrelease/ {print $2}' Révision sysctl -a | awk -F "= " '/osrevision/ {print $2}' Boot ROM Version system_profiler | awk -F ": " '/Boot ROM Version/ {print $2}' Version du SMC (Contrôleur de gestion du système) system_profiler | awk -F ": " '/SMC Version/ {print $2}' Apple Bluetooth Software Version system_profiler | awk -F ": " '/Apple Bluetooth Software Version/ {print $2}' Nom de la machine hostname | awk -F "." '{print $1}' Nbre de processeur(s) physique(s) sysctl -a | awk -F ": " '/ncpu:/ {print $2}' Nbre de processeur(s) logique(s) sysctl -a | awk -F ": " '/hw.logicalcpu:/ {print $2}' Nombre de processeur(s) actif(s) sysctl -a | awk -F ": " '/activecpu/ {print $2}' CPU Features (MacIntel) sysctl -a | awk -F ": " '/cpu.features/ {print $2}' Fréquence de bus sysctl -a | awk -F ": " '/busfrequency:/ {print $2/1000000 " Mhz"}' Quantité totale de RAM installée sysctl -a | awk -F ": " '/memsize:/ {print $2/(1024*1024)}' Resolution system_profiler | awk -F ": " '/Resolution/ {print $2}' Lien vers le commentaire Partager sur d’autres sites More sharing options...
Francois_D Posté(e) le 3 novembre 2006 Partager Posté(e) le 3 novembre 2006 J'ai corrigé les fautes de frappe et d'orthographe... pour afficher la météo, le plus simple est d'utiliser Weather Dock F Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 3 novembre 2006 Auteur Partager Posté(e) le 3 novembre 2006 Oki Merci. Pour la météo, je sais très bien que cette solution existe Mais je veux développer une solution via GeekTool qui, rappelons le, est l'objet du topic Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 17 décembre 2006 Auteur Partager Posté(e) le 17 décembre 2006 Et voilà : ce topic voit enfin la lumière du jour. Il me reste encore du boulot mais vous avez déjà de quoi faire. Lien vers le commentaire Partager sur d’autres sites More sharing options...
falou Posté(e) le 17 décembre 2006 Partager Posté(e) le 17 décembre 2006 J'adore GeekTool, je m'en servais il y a une paire d'années pour surveiller les activité d'apache (page demandées avec IP du demandeur, requête douteuses etc.), l'activité aussi de QTSS... un super outils pour surveiller ses logs. J'affichais aussi la carte d'alerte de météo france. Malheureusement son développement a été suspendu et l'installation sous Tiger plantais. Je suis étonné que ce ne soit plus le cas Je vais me repencher là-dessus et ce super tuto va me rafraîchir la mémoire embrumée par le temps passé sans cet outil. Merci Quarky Lien vers le commentaire Partager sur d’autres sites More sharing options...
falou Posté(e) le 18 décembre 2006 Partager Posté(e) le 18 décembre 2006 Je ne sais trop comment, une de mes vieilles config de GeekTool a refait surface après l'installation de cette version qui en effet marche très bien sous Tiger ! De mon imac G4 à mon iMac 20" à mon imac 17", ça a finit par atterrir sur mon 24". Il s'agit d'afficher la mini-carte des alertes météo et c'est très simple. C'est une image à chercher sur cette adresse : http://www.meteofrance.com/vigilance/cartes/derniers/mn.gif rafraichir tous les 1800 secondes. L'hiver arrive, c'est pas du luxe. Lien vers le commentaire Partager sur d’autres sites More sharing options...
ano_635102115353656150 Posté(e) le 21 décembre 2006 Partager Posté(e) le 21 décembre 2006 Salut à tous Déjà bravo pour ce sujet, j'ai appris pas mal de commandes utiles J'en profite pour rajouter quelques détails; pour la météo il y a une image pas mal ici, il doit y avoir d'autres résolutions dans le même dossier. Et tant que j'y suis j'ai fouillé mon vieux dossier de scripts pour Geektool et j'ai retrouvé ça: #!/bin/sh echo "Airport: $(if ifconfig en1 | grep netmask | awk '{print $2}' | grep "."; then echo ""; else echo "Pas d'IP"; fi)"; echo "Ethernet: $(if ifconfig en0 | grep netmask | awk '{print $2}' | grep "."; then echo ""; else echo "Pas d'IP"; fi)"; echo "$(if curl adresseip.sur-la-toile.com/ | grep "Votre adresse IP est" | awk -F[\ \<] '{print $6}' | grep "host"; then echo "Internet: indisponible"; else echo "Internet: $(curl adresseip.sur-la-toile.com/ | grep "Votre adresse IP est" | awk -F[\ \<] '{print $6}')"; fi | grep "Internet")"; Ca affiche les IP Airport, Ethernet, Internet. Tout le monde constatera que ce script est lourd et gras donc si quelqu'un a le niveau et le temps de l'alléger un peu, c'est cool a+ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 21 décembre 2006 Auteur Partager Posté(e) le 21 décembre 2006 Voilà j'ai rajouté les images pour la météo Encore merci à tous les deux. Et je vais voir pour le script, j'ai déjà vu quelques simplifications possibles Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 21 décembre 2006 Auteur Partager Posté(e) le 21 décembre 2006 Voilà c'est vu #!/bin/sh echo "Airport: $(if ifconfig en1 | awk '/netmask/ {print $2}'; then echo ""; else echo "Pas d'IP"; fi)"; echo "Ethernet: $(if ifconfig en0 | awk '/netmask/ {print $2}'; then echo ""; else echo "Pas d'IP"; fi)"; echo "$(if curl adresseip.sur-la-toile.com/ | awk -F[\ \<] '/Votre adresse IP est/ {print $6}' | grep "host"; then echo "Internet: indisponible"; else echo "Internet: $(curl adresseip.sur-la-toile.com/ | awk -F[\ \<] '/Votre adresse IP est/ {print $6}')"; fi | grep "Internet")"; Le curl doit encore pouvoir être retravaillé. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dahas Posté(e) le 23 décembre 2006 Partager Posté(e) le 23 décembre 2006 Beau boulot ! A mettre dans ma liste de course pour mon iMac qui devrait pas trop tarder Lien vers le commentaire Partager sur d’autres sites More sharing options...
edouardsoum Posté(e) le 2 janvier 2007 Partager Posté(e) le 2 janvier 2007 Heu, voila je l'ai installer, mais en fait je me suis apercu que je ne m'en servais pas et voila, je ne sais pas comment on fait pour le désinstaller? Si vous pouviez m'aider, merci (et d'ailleur il y a d'autre appli que je ne sais pas désinstaller) BONNE ANNÉE à tous Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 2 janvier 2007 Auteur Partager Posté(e) le 2 janvier 2007 Si tu as AppZapper ou CleanApp, ils le font très bien. Sinon il te faudra y aller "à la main" : - "/Library/PreferencePanes/GeekTool.prefPane/" - "~/Library/Preferences/org.tynsoe.geektool.plist" Lien vers le commentaire Partager sur d’autres sites More sharing options...
edouardsoum Posté(e) le 3 janvier 2007 Partager Posté(e) le 3 janvier 2007 Merci beaucoup Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 13 février 2007 Auteur Partager Posté(e) le 13 février 2007 Alors personne s'est fait de petite config depuis ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
kankei71 Posté(e) le 11 mars 2007 Partager Posté(e) le 11 mars 2007 Bonjour à tous, je suis nouveau sur ce forum et j'ai trouvé les info de ce topic super pratique mais je cherche quelqu'un qui pourrait m'aider à créer un petit script pour GeekTool car je suis tout à fait incapable en la matière. Voià, je me demande si il est possible d'avoir en même temps une information sur le nombres de mails reçu, couplé à un texte. Avec le script ici en-bas, j'aurai "0" s'il n'y a pas de nouveau messages et 1,2,3,... si il y a des nouveaux messages. Ce que je voudrais c'est n'avoir rien du tout en cas d'absence de message, même pas 0 et en cas de nouveau message, je voudrais voir afficher: "Il y a X nouveau messages" sur le bureau et pouvoir choisir la police, la taille et la couleur du texte. Ou si c'est plus simple, n'avoir rien en cas d'absence de message et juste le texte sans compteur du genre:"Il y a de nouveaux messages", ou quelque chose comme ça. J'ai fait quelques assai mais malheureusement je ne m'en sort pas. Est-ce que c'est possible? Quelqu'un peut-il m'aider? Merci d'avance. echo 'tell application "Mail" to return unread count of inbox' | osascript | perl -e "@a=split ',',<STDIN>; foreach (@a) {\$n += \$_}; print \"\$n\n\";" Lien vers le commentaire Partager sur d’autres sites More sharing options...
kankei71 Posté(e) le 12 mars 2007 Partager Posté(e) le 12 mars 2007 En fait, avec le script suivant: echo 'tell application "Mail" to return unread count of inbox' | osascript | perl -e "@a=split ',',<STDIN>; foreach (@a) {\$n += \$_}; print \"\$n new message(s)\n\";" Je vais avoir un message sur le bureau m'indiquant "X nouveau messages", qu'il y en ait 0 ou 1,2,3,... J'essaye de supprimer l'information lorsequ'il n'y a pas de nouveau message et avoir le texte uniquement à partir de 1 message. Que dois-je ajouter (ou modifier plutôt) à ce script pour avoir l'information uniquement à partir de 1? Quelqu'un as-t-il une idée? Lien vers le commentaire Partager sur d’autres sites More sharing options...
falou Posté(e) le 12 mars 2007 Partager Posté(e) le 12 mars 2007 L'icône de Mail qui indique le nombre de courriers arrivés ne te suffit pas ? Ca fait exactement la même chose... Lien vers le commentaire Partager sur d’autres sites More sharing options...
kankei71 Posté(e) le 12 mars 2007 Partager Posté(e) le 12 mars 2007 L'icône de Mail qui indique le nombre de courriers arrivés ne te suffit pas ? Ca fait exactement la même chose... Salut, c'est tout à fait vrai mais j'ai l'habitude de cacher mon dock (que je trouve plutôt gênant). En fait ce que je voudrais c'est utiliser geektool pour avoir l'info qui viendrait s'afficher directement sur le desktop grace à une commande shell. Le problème c'est que la commande que j'ai affiche le message en permanence. Je voudrais trouver un moyen pour qu'elle ne s'affiche uniquement en cas de nouveau message à partir de 1. Mais je ne suis pas assez doué en programmation pour trouver tous seul donc je vous demande votre aide. :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Quarky Posté(e) le 12 mars 2007 Auteur Partager Posté(e) le 12 mars 2007 Moi j'ai le dock caché mais ça ne me pose pas de problèmes pour Mail Soit j'entends l'alerte, soit je vois le chiffre sur l'icône en cherchant un des raccourcis. Sinon pour revenir à ton script, j'avais fait un script pour authsight qui ne donnait un affichage que si une condition était vérifiée. Par contre c'est en shell En regardant rapidement, essayes avec ceci : echo 'tell application "Mail" to return unread count of inbox' | osascript | perl -e "@a=split ',',<STDIN>; foreach (@a) {\$n += \$_}; if (\$n is not 0) { print \"\$n new message(s)\n\";"} Je garantis pas du tout le succès de ce code. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.