ubuntuusers.de

Script-Code

Autor:
Frank_M
Datum:
10. November 2014 17:10
Code:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#! /bin/bash
#
# Script to start decode QR-Codes from the desktop with
# ksnapshot, zbarimg and xclip to the KDE-clipboard

# first, find the running instance of ksnapshot
wasrunning="yes"
pid="`pidof -s ksnapshot`"
if [ -z "$pid" ]
then
  wasrunning=""
  kstart -iconify ksnapshot && sleep 0.2
  while [ "$pid" == "" ]; do pid="$(pgrep ksnapshot)"; done
fi

echo $pid
sleep 1

echo "Setting url $url to PNG"
url="file:///tmp/$pid-qrcode.png"
echo `qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.url`

echo $url

qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.setURL $url

echo "setUrl done set to:"
echo `qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.url`

echo "set GramMode to 2 (rectangle)"
qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.setGrabMode "2"

echo "set delay to 0"
qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.setTime "0"

qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.slotGrab
sleep 5

qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.slotSave

eval=`qdbus org.kde.ksnapshot-$pid /KSnapshot org.kde.ksnapshot.exit`
echo "finished .."

echo "evaluate QR-Code and copy to clipboard"
if [[ -s $url ]]; then
  (zbarimg -q --raw $url || dmtxread $url) | xclip -i
fi