Làm cách nào để định kỳ chạy tập lệnh / lệnh khi một ứng dụng cụ thể đang được sử dụng?


0

Tôi muốn một applescript nhất định chạy cứ sau 10 giây nhưng chỉ khi một ứng dụng cụ thể đang được sử dụng (tức là cả hai đều là ứng dụng trước VÀ chuột hoặc bàn phím được sử dụng trong vài giây qua).

Làm thế nào tôi có thể tạo ra một kích hoạt như vậy?


ứng dụng gì? osx gì phần cứng gì? bạn đã có kịch bản chưa?
Buscar웃

Bạn có thể quan tâm keyboardmaestro.com/main
Buscar웃

Bạn có thể tạo một tác vụ Cron bằng AppleScript khi ứng dụng đang mở. Và tác vụ Cron sẽ gọi AppleScript cứ sau 10 giây.
StrawHara

Câu trả lời:


1

Cái này chạy say a nếu thời gian kể từ sự kiện HID (thiết bị trỏ hoặc bàn phím) cuối cùng là hơn 3 giây và nếu ứng dụng ngoài cùng là iTerm:

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

Các cách khác nhau để có được tên của ứng dụng ngoài cùng:

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'
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.