2017-05-23 6 views
1

マウス1をクリックしてからスクリプトを実行すると、マウス1をクリックするたびにそのスクリプトが実行されます。私はpythonとbashを使用して見てみましたが、私は初心者であり、あまり知りません。マウス1ボタンが押された後にbashスクリプトを実行する方法を検出するには?

#!/bin/bash 

DATE=$(date +¨%F_%I:%M:%S¨) 

raspistill -o /home/pi/Pictures/$DATE.jpg -n -t 1 
scrot /home/pi/Pictures/$DATE.png 

これは私が実行しようとしていると私はxevの、に探してきたスクリプトは、xdotoolをxkeybindsですが、私はそれを把握することはできません。

私たちがやっていることは、タッチスクリーンモニターを使用することです。クリックするたびに写真が撮られます。

+0

https://unix.stackexchange.com/questions/106736/detect-if-mouse-button-is-pressed-then-invoke-a-script-or-commandありがとう – moritzg

+0

私はそれを見ましたが、スクリプトを実行するためにコードを変更する方法を理解できませんでした:c – Sirsyorrz

答えて

0
#!/usr/bin/env bash 

mouse="$(xinput --list | awk -F 'id=|\\[' '/mouse|Mouse/ {print $2}')" 
mouse="${mouse//[[:space:]]}" 

while :; do 
    state="$(xinput --query-state "$mouse")" 

    # If mouse 1 pressed. 
    if [[ "$state" == *"button[1]=down"* ]]; then 
     date="$(date +"%F_%I:%M:%S")" 

     raspistill -o "/home/pi/Pictures/${date}.jpg" -n -t 1 2>/dev/null & 
     scrot "/home/pi/Pictures/${date}-2.jpg" & 
    fi 

sleep .1s 
done 
関連する問題