Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Autostart DLNA serveru [vyřešeno]  (Přečteno 2263 krát)

Cuore

  • Závislák
  • ***
  • Příspěvků: 2534
Autostart DLNA serveru [vyřešeno]
« kdy: 09 Února 2012, 13:30:48 »
Ahoj,
 napsal by mi někdo skript pro spuštění serveru Serviio + jeho konzole po bootu systému? Něco jsem polátal a je to kupodivu i funkční, ale problém je, že ani sám nechápu jak to může takhle fungovat  ::) . Začal jsem se probírat články http://www.linuxexpres.cz/praxe/serial-o-bashi
no a podle toho jsem si vytvářel první skript. Problém byl ale v tom, že zůstal třeba zamrzlý v polovině, jako by čekal na návratovou hodnotu od Serviio.sh ,která ale nepřijde? Nakonec pomocí pokus omyl jsem se dopracoval k tomuto
#!/bin/sh

echo  'server serviio startuje'

sleep 30; echo  'konzole serviio nabiha, server neaktivni'

~/serviio-0.6.0.1/bin/./serviio.sh & ~/serviio-0.6.0.1/bin/./serviio-console.sh & echo 'server serviio nabehl'

sleep 3 ; echo  'konzole serviio nabehla, server aktivni'

exec

je to funkční  ;D ale proti všemu, čemu jsem se zatím dočetl v seriálu o Bashi. Třeba ampersand & by měl sloužit na konci řádku, jako spuštění na pozadí a dva vedle sebe && něco jako logický součin "and" Vždy jsem narazil, že jakmile jsem se dostal  po řádek " ~/serviio-0.6.0.1/bin/./serviio.sh" vše zůstalo čekat na něco "?" Echa proběhnou, ale jak se má spustit server či konzole toto proběhne a pak jen čeká, nezávisle zda je zbytek na dalším řádku, nebo na stejném s operandy nebo závorkami. Tenhle nelogický výtvor funguje a netuším proč? což mě štve  :)
Takže bych rád poprosil o vysvětlení a napsání nového skriptu, který bude dělat totéž, ale logicky. A ještě, kdyby byla možnost toho echa ho dostat do grafiky ve formě info bubliny.
Dík moc za osvětu
« Poslední změna: 10 Února 2012, 08:46:38 od Cuore »

pacholik

  • Závislák
  • ***
  • Příspěvků: 2072
Re:Autostart DLNA serveru
« Odpověď #1 kdy: 09 Února 2012, 14:20:09 »
nevidím v tom nic divnýho, snad jen že echo na řádku
Kód: [Vybrat]
~/serviio-0.6.0.1/bin/./serviio.sh & ~/serviio-0.6.0.1/bin/./serviio-console.sh & echo 'server serviio nabehl'je poněkud zbytečně, protože se zobrazí i když server nenaběhne

notifikace takhle
Kód: [Vybrat]
notify-send "tohle je nadpis" "a tady tělo"více v man notify-send

Cuore

  • Závislák
  • ***
  • Příspěvků: 2534
Re:Autostart DLNA serveru
« Odpověď #2 kdy: 09 Února 2012, 15:36:47 »
To jsem potřeboval  ;) takže notify-send je ta kouzelná formule :D
no divný mi přijde celý řádek
Kód: [Vybrat]
~/serviio-0.6.0.1/bin/./serviio.sh & ~/serviio-0.6.0.1/bin/./serviio-console.sh & echo 'server serviio nabehl'proč takhle funguje a takhle
Kód: [Vybrat]
~/serviio-0.6.0.1/bin/./serviio.sh
~/serviio-0.6.0.1/bin/./serviio-console.sh
echo 'server serviio nabehl'
už se sekne v prvním řádku a nepokračuje. Předpokládám, že pokud dám to echo na další řádek, tak to zůstane viset zase v tom druhém a k echu se ani nedostane. No a další nejasnosti jsem vyslovil v předchozím příspěvku.

pacholik

  • Závislák
  • ***
  • Příspěvků: 2072
Re:Autostart DLNA serveru
« Odpověď #3 kdy: 09 Února 2012, 23:06:56 »
Jj, protože zbytek čeká až se provede serviio.sh (čili až skončí). Rozdělit na víc řádků to můžeš prostě takhle
Kód: [Vybrat]
~/serviio-0.6.0.1/bin/serviio.sh & # tečka tam být nemusí
~/serviio-0.6.0.1/bin/serviio-console.sh &
echo 'server serviio nabehl'
ale jak říkám, echo tam nemá smysl

 

Provoz zaštiťuje spolek OpenAlt.