Opis
Poniższa instrukcja opisuje w jaki sposób zaplanować automatyczne poszukiwanie napisów dla filmów i odcinków seriali na routerze z systemem OpenWRT w wersji Backfire 10.03.Instalacja
Potrzebny będzie pakiet napiprojekt, który znajduje się tutaj: napiprojekt. Instalacja następuje za pomocą:
opkg install http://eko.one.pl/openwrt/backfire/10.03/napiprojekt_6_ar71xx.ipkOpkg zainstaluje potrzebne zależności z wyjątkiem p7zip, który można dostać stąd: p7zip. Instalujemy go podobnie:
opkg install http://ecco.selfip.net/backfire/packages/p7zip_9.13-3_ar71xx.ipk
Skrypt
Tworzymy nowy skrypt wydając polecenie:nano /usr/bin/napisy.shDzięki umieszczeniu w katalogu /usr/bin, który znajduje się w zmiennej środowiskowej $PATH, plik będzie można uruchomić z dowolnego miejsca w systemie. Następnie w treści pliku powinno znaleźć się:
#!/bin/sh # Przejrzyj po kolei wymienione katalogi for katalog in /srv/filmy /srv/seriale do # Znajdz wszystkie pliki avi, wypisz pelna sciezke: "1 linia = 1 plik", wczytuj po jednej linii do zmiennej # Uzycie read zabezpiecza przed sytuacją w której w nazwie pliku występują spacje find $katalog -name "*.avi" | while read plik_z_filmem do # Zamien rozszerzenie avi na txt, zeby utworzyc nazwe pliku z napisami do danego filmu # Otaczamy nazwe zmiennej cudzyslowem na wypadek gdyby nazwa pliku zawierala spacje plik_z_napisami=$(dirname "$plik_z_filmem")/$(basename "$plik_z_filmem" .avi).txt # Jesli nie istnieje plik z napisami if [ ! -e "$plik_z_napisami" ] then # Szukaj napisow dla danego pliku napiprojekt "$plik_z_filmem" fi done donePlikowi należy nadać pozwolenie na wykonywanie:
chmod +x /usr/bin/napisy.sh
Cron
Dzięki temu, że skrypt pomija filmy i odcinki dla których już ściągnął napisy, można spokojnie zaplanować jego cogodzinne wykonywanie. W tym celu należy dodać następującą linijkę do pliku /etc/crontabs/root:* */1 * * * napisy.shPrzystępne wyjaśnienie i wygodny "kalkulator" dla crona można znaleźć na http://eko.one.pl/?p=openwrt-cron