#!/usr/bin/env bash
while true; do
if xprintidle | grep -q 3000; then
xdotool mousemove_relative 1 1
fi
done
현재는 이 3000과 같은지 확인한 xprintidle
다음 그렇다면 실행할 수 있습니다 xdotool
. 하지만 xprintidle
3000보다 크거나 같은지 확인한 다음 실행하고 싶습니다 xdotool
. 어떻게 이를 달성할 수 있나요?
답변1
if [ $xprintidle -ge 3000 ]; then
[...stuff...]
간단한 설명은 다음과 같습니다.
- gt- 보다 큰
- 게-보다 크거나 같음
- $(...)괄호 안의 명령 출력이 됩니다.
답변2
당신이 사용할 수있는bash
의 산술 확장정수를 직접 비교하려면 다음을 수행하십시오.
#!/usr/bin/env bash
while :; do
(( $(xprintidle) >= 3000 )) && xdotool mousemove_relative 1 1
sleep 0.5
done
단일 명령만 원한다면 &&
간단한 방법입니다. 또는 다음을 사용하십시오 if
.
#!/usr/bin/env bash
while :; do
if (( $(xprintidle) >= 3000 )); then
xdotool mousemove_relative 1 1
fi
sleep 0.5
done
sleep
각 실행마다 0.5초 동안 일시 중지하도록 루프에 호출을 추가했습니다. 필요에 따라 조정합니다.
답변3
숫자가 다른 숫자보다 크거나 같다면 를 사용할 수 있습니다 -ge
. 따라서 코드는 다음과 같습니다.
#!/usr/bin/env bash
while true; do
if [[ $(xprintidle) -ge 3000 ]]; then
xdotool mousemove_relative 1 1
fi
done