일본 위성 서버에서 사진을 다운로드하여 배경 그림으로 설정하는 .sh 스크립트가 있습니다. 시작 목록에 넣었지만 5 분마다 자동으로 실행하려면 어떻게해야합니까?
일본 위성 서버에서 사진을 다운로드하여 배경 그림으로 설정하는 .sh 스크립트가 있습니다. 시작 목록에 넣었지만 5 분마다 자동으로 실행하려면 어떻게해야합니까?
답변:
경우 당신이 쉬운 방법을 원하고 피하기 세트에있는 환경 변수를 찾을 수 있습니다 :
시작 응용 프로그램에 다음을 추가하십시오.
/bin/bash -c "sleep 15 && while true; do <path_to_your_script.sh> ; sleep 300; done"
대시> 시작 애플리케이션> 추가. 다음 명령을 추가하십시오 :
/bin/bash -c "sleep 15 && while true; do <path_to_your_script.sh> ; sleep 300; done"
자신의 환경 (예 : 터미널 창 또는 시작 응용 프로그램)에서 스크립트를 실행하면 여러 환경 변수가 설정됩니다. cron
그러나 제한된 환경 변수 세트로 스크립트를 실행합니다.
스크립트가 의심 할 바없이 다음 gsettings
명령을 사용합니다 .
gsettings get org.gnome.desktop.background picture-uri <wallpaper>
배경 화면을 설정하려면 거의 확실하게 명령이에서 실행될 때 중단됩니다 cron
.
"게으른 해결책"의 단점은 순전히 이론적 인 것입니다. 실제로 지속적으로 잠자기 명령은 시스템에 아무 의미가 없습니다 .
이 게시물을 읽고 과거의 경험을 통해 DBUS_SESSION_BUS_ADDRESS
환경 변수를 설정해야한다고 확신합니다 .
이렇게하려면 스크립트 시작 부분 (세방 아래)에 다음 섹션을 추가하십시오.
PID=$(pgrep gnome-session)
export DBUS_SESSION_BUS_ADDRESS=$(grep -z DBUS_SESSION_BUS_ADDRESS /proc/$PID/environ|cut -d= -f2-)
그런 다음에서 성공적으로 실행할 수 있어야합니다 cron
.
그러나 허슬을 잘 저장하고 게으른 옵션을 선택할 수 있습니다.
cpu 0.0%
무슨 세금에 대해 이야기하고 있습니까?
당신의에 넣어 crontab
.
다음을 통해 cron
테이블을 엽니 다 .
crontab -e
이제 다음을 추가하십시오.
*/5 * * * * /path/to/script.sh
스크립트를 미리 실행 가능하게 만드는 것을 잊지 마십시오.
스크립트가 X에 의존 DISPLAY
하므로 스크립트 환경에 스크립트 를 추가하는 것이 좋습니다 .
*/5 * * * * DISPLAY=:0 /path/to/script.sh
:0
실제로 교체하십시오 DISPLAY
( echo $DISPLAY
대화식 세션에서 찾을 수 있음 ).
필요한 경우 XAUTHORITY
환경 변수도 추가 할 수 있습니다 .
*/5 * * * * DISPLAY=:0 XAUTHORITY="~/.Xauthority" /path/to/script.sh
다시 값을 찾을 수 있습니다 echo $XAUTHORITY
.