Mam zatem kolekcję skryptów, które służą do kontrolowania mocy mojego odbiornika i telewizora podczas pewnych zdarzeń, takich jak rozruch, wygaszacz ekranu i sterowanie zdalne. Jedna z nich jest wykonywana podczas logowania, ale może nie chcę, aby uruchamiał skrypt, gdy planuje się uruchomienie komputera. Mam logikę, aby ignorować zdarzenia, jeśli blanked = 0 podczas uruchamiania aplikacji startowych, dlatego nie będzie wysyłał ir podczas uruchamiania lub zamykania systemu. Jak mogę to zrobić dzięki użyciu crona? Wybieram crona, ponieważ te zdarzenia mają miejsce przed uruchomieniem aplikacji. Cron jest niesamowity, ale o ile rozumiem, mogę uruchamiać go tylko przy starcie lub nie według harmonogramu. Muszę zakodować zmienną czasową, ale nie jestem pewien jak.Skrypt startowy Cron tylko w określonych porach dnia
syson.sh (tzw podczas logowania jako aplikacja ekran startowy i państwowej zmianie)
#!/bin/sh
cd /home/gilson585/
blanked=`cat blanked`
if [ $blanked -eq 0 ] ; then
blanked=1;echo $blanked > blanked
else
irsend SEND_ONCE VR4085DF KEY_POWER;irsend SEND_ONCE Kenwood_RC-R0813 power;blanked=0;echo $blanked > blanked
sleep 1
irsend SEND_ONCE Kenwood_RC-R0813 cd/dvd
fi
sysoff.sh (tzw podczas zamykania jako część skryptu init.d lirc i zmiany stanu ekranu)
#!/bin/sh
cd /home/gilson585/
blanked=`cat blanked`
if [ $blanked -eq 0 ] ; then
irsend SEND_ONCE Kenwood_RC-R0813 power;irsend SEND_ONCE VR4085DF KEY_POWER;blanked=1;echo $blanked > blanked
fi
xscreensaver.sh (watchdog wygaszacz ekranu, zwany podczas logowania)
#!/bin/bash
cd /home/gilson585/
xscreensaver-command -watch|
while read STATUS; do
case "$STATUS" in
BLANK*)
/home/gilson585/sysoff.sh;blanked=1;echo $blanked > blanked
;;
UNBLANK*)
/home/gilson585/syson.sh;blanked=0;echo $blanked > blanked
;;
esac
done
Nie zamierzam nawet kłamać, to imponujące! Czy możesz podać więcej szczegółów na temat swojej konfiguracji? –
Tak, ale jest w tym dużo i nie jestem pewien, czy to miejsce jest odpowiednie. Może opublikuję to na forum ubuntu i połączysz go. – gilson585
Można spróbować kontrolować to za pomocą pliku XML, aby zaplanować, kiedy i kiedy nie należy uruchamiać? Skrypt może się przez to przepracować i użyć go jako kontrolki z bramką logiczną (jeśli). –