|
|||
|
|||
|
Linux Backup Umstieg Tipps nVidia & 2.6.8er Kernel Cocoon OJB JDO CForms Passwort vergessen? Noch keinen Account? SSL aktivieren |
Linux-TippsAuf dieser Seite möchte ich einige Scripte vorstellen die ich geschrieben habe, die einem das leben unter Linux erleichtern.Tipps: licq | KDE-Desktop Hintergrund | BitchX mit pseudo-transparentem Hintergrund im aterm licqNach obenBei licq hat mich eine ganze Weile angenervt, dass man z.B. Sounds die abgespielt werden können nicht pro User oder pro Gruppe eingestellt werden koennen. Abhilfe dafür schafft dieses inzwischen etwas kompliziertere Shell-Script, das bei licq in der Event-Sektion angegeben werden muss. #!/bin/bash ##################################### # icqevent.sh (C) Christoph Hermann # ##################################### MINPARAMS=2 if [ $# -lt $MINPARAMS ] then echo "Usage: $0 <type> <uin>" echo "WHERE <type> is one of the following: (msg|url|chat|file|online|system|sent)" exit 1; fi LICQ_DIR=$HOME/.licq/ LICQ_USER_DIR=${LICQ_DIR}users/ LICQ_CONF=$LICQ_DIR/licq.conf GROUP_COUNT=`awk -F = '/NumOfGroups/ {printf "%i",$2}' < $LICQ_CONF` # Command Line Parameter TYPE=$1 UIN=$2 PLAYCMD=/usr/bin/play # echo UIN: $UIN TYPE: $TYPE function playsound { if ! [ -z $1 ] then $PLAYCMD $1 PLAYED=1 fi } # Usergruppe ermitteln GROUP_NAME="" GRUPPENANZAHL=0 DATEI=${LICQ_USER_DIR}$UIN.uin # echo USERDATEI: $DATEI SYSTEM_GROUP=`cat $DATEI | awk -F = '/Groups\.System/ {print $2}'` if ([ -n "$SYSTEM_GROUP" ] && ! [ $SYSTEM_GROUP -eq 8 ]) then GROUP_CODE=`cat $DATEI | awk -F = '/Groups\.User/ {print $2}' | sed "s/^ *//"` if (! [ -z "$GROUP_CODE" ] && ! [ "$GROUP_CODE" -eq 0 ] ) then for ((j=0; $j <= $GROUP_COUNT; j++)) do TEST_GROUP=$((2**($GROUP_COUNT - $j) )) TEST_ERG=$(( $GROUP_CODE & $TEST_GROUP )) if ! [ $TEST_ERG -eq 0 ] then GROUP_NUM=$(($GROUP_COUNT - $j + 1)) GROUP_NAME=`cat $LICQ_CONF | grep "Group$GROUP_NUM.name" | sed 's/^[^=]*= //'` GRUPPE[$GRUPPENANZAHL]=$GROUP_NAME GRUPPENANZAHL=$(($GRUPPENANZAHL + 1)) fi done fi fi # Sound already played? PLAYED=0 # per-user settings case $TYPE in "msg") # Check if groups match for ((k=0; $k < $GRUPPENANZAHL; k++)) do GRUPPE=${GRUPPE[$k]} case $GRUPPE in "GRUPPE XY") # playsound /usr/share/licq/sounds/icq/Message.wav ;; esac done # if not Played sound because in group? if ! [ $PLAYED -eq 1 ] then case $UIN in # User 123 "123456789") # playsound /usr/share/licq/sounds/icq/Message.wav ;; # User 321 "987654321") playsound /usr/share/licq/sounds/icq/Message.wav ;; esac fi ;; # end msg "url") ;; "chat") ;; "file") playsound /usr/share/licq/sounds/icq/File.wav ;; "online") playsound /usr/share/licq/sounds/icq/Online.wav ;; "system") ;; "sent") ;; esac
licq Optionen %u in den Optionen steht für die ICQ Nummer des jeweiligen Kontakts der das Event auslöst. Dieses Skript kann man natürlich beliebig erweitern, dass es noch ganz andere Aktionen ausführt, aber ich denke die Idee wird hier erstmal klar.KDE-Desktophintergrund per Konsole ändernNach obenMit folgendem Befehl kann man ganz einfach den KDE-Desktop Hintergrund via dcop ändern an der Konsole. Damit kann man sich dann z.B. Skripte schreiben, die je nach Tageszeit oder sontigem den Hintergrund ändern. dcop kdesktop KBackgroundIface setWallpaper /path/to/filename.ext <mode>Wobei <mode> für einen Integer steht, mir persönlich ist Mode 7 am liebsten (angepasst zentriert). BitchXNach obenMit diesem Befehl kann man BitchX innerhalb eines aterms mit pseudo-transparentem Hintergrund starten. aterm +sb -title "BitchX IRC" -tr -sh 50 -fg white -bg black -e bitchx irc.quakenet.org |
|
|||
|