xdotool
루트 셸에서 사용자 모니터에 대한 작업(마우스 이동)을 수행 하려고 하는데 다음과 같은 결과가 나타납니다.
# DISPLAY=:0 mousemove_relative 1 1
No protocol specified
Error:Can't open display: (null)
Failed creating new xdo instance
#
왜 이것이 작동하지 않습니까?
스크립트:
#!/bin/bash
exec=`/usr/sbin/nethogs -t -c 1| awk '/smbd/ {print $2}'`
sent=$exec
echo "result: "$sent
sent=$(echo "($sent+0.5)/1" | bc)
echo "rounded: "$sent
if [[ $sent -gt 0 ]]
then
echo "music is playing"
`DISPLAY=:0 xdotool mousemove_relative 1 1`
else
echo "quiet"
fi
나는 이것을 얻습니다 /var/mail/root
:
Waiting for first packet to arrive (see sourceforge.net bug 1019381)
result: 6.73438
rounded: 7
music is playing
No protocol specified
Error: Can't open display: (null)
Failed creating new xdo instance
답변1
스크립트에 다음을 추가해야 했습니다.
export DISPLAY=:0
export XAUTHORITY=/home/username/.Xauthority