Zasadniczo próbuję uruchomić to piękno: su pi -c "crontab -l | { cat; echo "0 4 * * * pkill -f awesomeFile.py ; python /home/user/python/awesomeFile.py &"; } | crontab -"
Chcę ponownie uruchomić serwer Pythona co noc o 4 rano. Instaluje to poprawnie zadanie cron, ale polecenie nie wykonuje się poprawnie. Zabije stary proces, ale nie uruchomi nowego.
Jakieś sugestie?
Odpowiedzi:
0 dla odpowiedzi № 1Może cron nie wie, gdzie python
jest. Spróbuj uruchomić go z absolutną ścieżką. Z which
polecenie można uzyskać lokalizację Pythona:
$> which python
/usr/bin/python
0 dla odpowiedzi nr 2
Nienawidzę komentować martwego wątku, ale po prostunatknąłem się na ten dokładny problem i może to dlatego, że twój pkill powraca bez sprawdzania, czy procesy nie są martwe. Tack na tym tagu -w i sprawdzi się raz na sekundę, aby zobaczyć, czy zabójstwo się powiodło, a następnie powrócić. Dla przyszłych użytkowników, którzy są uzależnieni od zamknięcia tego, co używa ich portów, upewnij się, że poczekasz, aż proces prev jest martwy, zanim spróbujesz nowego.