Portál AbcLinuxu, 3. listopadu 2025 23:16
dobry den myslim ze som v nazvu vystihol kompletny problem ktory riesim
urcite nieco jednoduche v linuxe existuje a nebudu to musiet skriptovat
dakujem za rady ci nazvy doporucenych programou
Řešení dotazu:
Toto řeší program init a v novějších distribucích pak upstart
Konfigurace je v souboru /etc/inittab respektive /etc/init.conf a /etc/init/*.conf
Init je program, který se v Linuxu spouští jako první, má PID 1 a stará se o spuštění samotného systému, proto si troufám tvrdit, že init už tam je nainstalován - prohlédněte si /etc/inittab a přečtěte si manpage
zz:2345:respawn:/cesta/k/programuProgram se pak bude spouštět automaticky v runlevelu 2,3,4 a 5. Kdykoliv skončí, nastartuje se znovu.
while :; do aplikacia; sleep 5; donewhile true ; do if [ -z "`ps -u ghaad | grep leafpad`" ] ; then leafpad & fi; sleep 5 done
Ten tvoj skript je dost pravdepodobne, ze niekedy, aj napriek tomu, ze ten proces nebezi, nespusti ho. Je to kvoli tomu grep, ktory najde sameho seba.
Tu je tiez riesenie (dufam) :
#!/bin/bash
shopt -s extglob
CMD='' # sem treba zapisat prikaz, ktory treba sledovat
# odstrani cestu k adresaru s aplikaciou a taktiez parametre pre danu aplikaciu
APP=${CMD//@(*\/|[[:space:]]*)}
while true
do
if [[ ! $(pidof "${APP}") ]]
then
${CMD} &
wait
fi
done
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.