chevreuil.net http://chevreuil.net/forums/ |
|
Tradition linuxienne http://chevreuil.net/forums/viewtopic.php?f=44&t=26435 |
Page 1 sur 1 |
Auteur : | Dents d'acier [ Ven Juin 25, 2010 11:27 pm ] |
Sujet du message : | Tradition linuxienne |
La tradition linuxienne veut qu'on partage notre recette de "conky", ce qui permet à chacun d'améliorer le sien. Pour ceux qui se demanderaient: "conky c'est quoi que ça mange en hivert" c'est les indication que vous voyez à la droite de mon écran. C'est un "gadjet" qu'on écrit sois même et qui est unique à chaque utilisateur. On peut mettre des gadjets ordinaire aussi mais c'est comme des gateaux acheté- c'est pas aussi satisfaisant que ceux qu'on fait sois meme. S'il y à une autre linuxien sur le forum, voilà le mien (postez le votre): Code : use_xft yes on_bottom yes xftfont Arial:size= 9 xftalpha 0.8 update_interval 1.0 total_run_times 0 own_window yes own_window_type override own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager own_window_transparent yes double_buffer yes draw_shades no draw_outline no draw_borders no stippled_borders 8 border_margin 4 border_width 1 default_color black default_shade_color black default_outline_color black alignment bottom_right minimum_size 305 5 maximum_width 305 gap_x 8 gap_y 8 no_buffers yes uppercase no cpu_avg_samples 2 net_avg_samples 2 override_utf8_locale yes use_spacer no TEXT ${alignc}${color1}${font URW Chancery L:style=Medium Italic:pixelsize=34}${time %H:%M:%S}${font}${color} $nodename En fonction depuis : $uptime ${execi 86400 lsb_release -si} : ${execi 86400 lsb_release -sr} ${execi 86400 lsb_release -sc} $sysname : $kernel $stippled_hr $alignc Processeur $alignc AMD Athlon64 3800+ $alignc Utilisation CPU: $cpu% de 2.4Ghz ${cpubar} ${cpugraph 333333 FFFFFF} Utilisation RAM: $mem/$memmax - $memperc% ${membar} Utilisation Swap: $swap/$swapmax - $swapperc% ${swapbar} Processus:$processes Running: $running_processes $stippled_hr $alignc Réseau: Bell ADSL Down ${offset 45}${totaldown eth0} ${offset 8}$alignc Up ${offset 45}${totalup eth0} ${downspeedgraph eth0 22,150 5e7b7b d8deeb} ${upspeedgraph eth0 22,150 99c8e8 618094} ${offset 40}${voffset -21}${downspeedf eth0}k/s ${offset 190}${voffset -14}${upspeedf eth0}k/s Adresse IP : $addr Mise à jour : ${execi 360 aptitude search "~U" | wc -l | tail} Paquets disponible $stippled_hr $alignc Espace Disque: ${fs_free /}/${fs_size /} soit :${fs_free_perc /}% ${fs_bar /} ${if_mounted /media/ARRIERE}${offset 35}USB ARRIERE : ${alignr}${fs_used_perc /media/ARRIERE}% occupés - ${fs_free /media/ARRIERE} libre ${offset 35}${fs_bar /media/ARRIERE} ${else}${offset 35}USB ARRIERE : Non connecté $endif ${if_mounted /media/CL}${offset 35}USB CL : ${alignr}${fs_used_perc /media/CL}% occupés - ${fs_free /media/CL} libre ${offset 35}${fs_bar /media/CL} ${else}${offset 35}USB CL : Non connecté $endif ${if_mounted /media/STEPHANE}${offset 35}USB STEPHANE : ${alignr}${fs_used_perc /media/STEPHANE}% occupés - ${fs_free /media/STEPHANE} libre ${offset 35}${fs_bar /media/STEPHANE} ${else}${offset 35}USB STEPHANE : Non connecté $endif $stippled_hr Musique :${if_running rhythmbox} ${alignc}--------- Rhythmbox --------- ${alignc}${execi 10 rhythmbox-client --print-playing-format "%tt" --no-start | grep -v Inconnu | grep -v Pas\ de\ lecture\ en\ cours} ${alignc} ${execi 10 rhythmbox-client --print-playing-format "%at" --no-start | grep -v Inconnu | grep -v Pas\ de\ lecture\ en\ cours} ${alignr} ${execi 10 rhythmbox-client --print-playing-format "%ag" --no-start | grep -v Inconnu | grep -v Pas\ de\ lecture\ en\ cours} ${execi 1 rhythmbox-client --print-playing-format "%te" --no-start | grep -v Pas\ de\ lecture\ en\ cours}${alignr}${execi 1 rhythmbox-client --print-playing-format "%td" --no-start | grep -v Inconnu | grep -v Pas\ de\ lecture\ en\ cours} ${execibar 1 $HOME/.conky/rhythmbox.sh progress}${else} Rhythmbox n'est pas ouvert $endif $stippled_hr Utilisation ressources (pid/cpu/mem): ${color #e09495} ${top name 1} ${top pid 1} ${alignc}${top cpu 1} ${top mem 1} ${color #e09495} ${top name 2} ${top pid 2} ${alignc}${top cpu 2} ${top mem 2} ${color #e0d094} ${top name 3} ${top pid 3} ${alignc}${top cpu 3} ${top mem 3} ${color #e0d094} ${top name 4} ${top pid 4} ${alignc}${top cpu 4} ${top mem 4} ${color1} ${top name 5} ${top pid 5} ${alignc}${top cpu 5} ${top mem 5} ${color1} ${top name 6} ${top pid 6} ${alignc}${top cpu 6} ${top mem 6} Code : #!/bin/bash
case "$1" in progress) curr=`rhythmbox-client --no-start --print-playing-format "%te" | grep -v "Pas de lecture en cours"` tot=`rhythmbox-client --no-start --print-playing-format "%td" | grep -v "Pas de lecture en cours" | grep -v Inconnu` a=`date +'%S' | sed 's/^0\+//'` if [ "$a" = "" ]; then a=0 fi b=$(( ($a*100) / 30 )) c=$(( 200-$b )) #si pas de durée totale, augmente pendant les 30 premieres secondes puis diminue pendant les 30 suivantes... if [ "$tot" = "" ]; then if [ $a -le 30 ]; then expr $b else expr $c fi else #Si durée totale déterminée, il faut traiter le retour de la commande donnant $curr (pour courant et $tot pour total, logique) qui renvoit une donnée sous la forme hh:mm:ss d="1" nbcurr=`echo $curr | wc -m` #nbr de caractères permet de déterminer si il y a seulement m:ss ou si il y a h:mm:ss (au minimum, m:ss) posm=$(( $nbcurr-5 )) #pour faire une commande cut générique, il faut définir l'endroit ou on coupe d'ou posx (position des minutes ici) if [ $posm -lt $d ]; then posm=`` #Si position inférieur à 1, renvoit variable vide pour ne pas bloque cut fi posm2=$(( $nbcurr-4 )) #Forcément 1 indication minute (minimum)= pas besoin de vérifier si >1 posh=$(( $nbcurr-8 )) #Idem pour les heures if [ $posh -lt $d ]; then posh=`` fi posh2=$(( $nbcurr-7 )) currs=`echo $curr | tail -c3 | sed 's/^0\+//'` # Récupération des secondes forcément à la fin et supression du premier 0 pour ne pas avoir de problème de base (08 en hexa ou base 10) if [ "$currs" = "" ]; then currs=0 #si uniquement des zeros, ils sont tous supprimé donc redonner la valeur fi currma=`echo $curr | cut -c$posm-$posm2 | sed 's/^0\+//'` if [ "$currma" = "" ]; then currma=0 #idem pour minutes fi currm=$(( $currma*60 )) #conversion en secondes if [ $posh2 -lt $d ]; then currh=0 else currha=`echo $curr | cut -c$posh-$posh2 | sed 's/^0\+//'` if [ "$currha" = "" ]; then #idem heures currha=0 fi currh=$(( $currha*3600 )) # conversion en secondes fi currt=$(( ($currh+$currm) + $currs )) #calcule du nombre de secondes total nbtot=`echo $tot | wc -m` #Même schema pour la suite mais avec la durée totale tposm=$(( $nbtot-5 )) if [ $tposm -lt $d ]; then tposm=`` fi tposm2=$(( $nbtot-4 )) tposh=$(( $nbtot-8 )) if [ $tposh -lt $d ]; then tposh=`` fi tposh2=$(( $nbtot-7 )) tots=`echo $tot | tail -c3 | sed 's/^0\+//'` ## OK if [ "$tots" = "" ]; then tots=0 fi totma=`echo $tot | cut -c$tposm-$tposm2 | sed 's/^0\+//'` ## OK if [ "$totma" = "" ]; then totma=0 fi totm=$(( $totma*60 )) ## OK if [ $tposh2 -lt $d ]; then toth=0 else totha=`echo $tot | cut -c$tposh-$tposh2 | sed 's/^0\+//'` ## OK if [ "$totha" = "" ]; then totha=0 fi toth=$(( $totha*3600 )) ## OK fi tott=$(( ($toth+$totm) + $tots )) ## OK expr $currt \* 100 / $tott #Et finalement expression du pourcentage accompli fi ;; esac |
Page 1 sur 1 | Time zone: America/Montreal |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |