Belirli bir uygulama kullanılırken bir komut dosyası / komut periyodik olarak nasıl çalıştırılır?


0

Belirli bir el kitabının her 10 saniyede bir çalışmasını istiyorum, ancak yalnızca belirli bir uygulama kullanıldığında (yani hem ön uygulama hem de fare veya klavye son birkaç saniyede kullanılıyor).

Böyle bir tetikleyiciyi nasıl oluşturabilirim?


hangi uygulama ne osx hangi donanım Senaryoyu zaten aldın mı?
Ruskes,


Uygulama açılırken AppleScript ile bir Cron görevi oluşturabilirsiniz. Ve Cron görevi her 10 saniyede bir AppleScript olarak adlandırılır.
StrawHara

Yanıtlar:


1

Bu say a, son HID (işaretleme aygıtı veya klavye) olayından bu yana geçen süre 3 saniyenin üzerindeyse ve en öndeki uygulama iTerm ise:

while sleep 10;do [[ $(ioreg -c IOHIDSystem|awk '/HIDIdleTime/{print $NF/1000000000;exit}'|awk '$0>3') && $(lsappinfo visibleProcessList|cut -d\" -f2) = iTerm ]]&&say a;done

En öndeki uygulamanın adını almanın farklı yolları:

lsappinfo visibleProcessList|cut -d\" -f2
lsappinfo find ASN=$(lsappinfo front)|cut -d\" -f2
osascript -e 'name of app (path to frontmost application as text)'
osascript -e 'tell app "System Events" to name of process 1 where frontmost is true'
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.