marek_tr Napisano Kwiecień 22, 2007 Zgłoszenie Share Napisano Kwiecień 22, 2007 Witam Czy ktoś może wie jak zmienić wpis w /etc/crontab z poziomu skryptu? Chcę zmienić jeden wiersz 0,15,30,45 * * * * root /root/bin/wykonuj.sh na * * * * * root /root/bin/wykonuj.sh i muszę to zrobić skryptem Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Karlik Napisano Kwiecień 22, 2007 Zgłoszenie Share Napisano Kwiecień 22, 2007 może man sed ? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
marek_tr Napisano Kwiecień 22, 2007 Autor Zgłoszenie Share Napisano Kwiecień 22, 2007 może man sed ? Wielkie dzięki Nie bardzo wiem jak coś tym sedem zapisać ale nie ważne, można tak sed -e '$d' /etc/crontab > /etc/crontab_2 cat /etc/crontab_2 > /etc/crontab rm -f /etc/crontab_2 echo '* * * * * root /root/bin/wykonuj.sh' >> /etc/crontab /etc/init.d/crond restart Nie wiem dlaczego sed -e '$d' /etc/crontab > /etc/crontab zamazuje cały plik dzięki Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
jjj Napisano Kwiecień 23, 2007 Zgłoszenie Share Napisano Kwiecień 23, 2007 Nie wiem dlaczego sed -e '$d' /etc/crontab > /etc/crontab zamazuje cały plik Bo [tt]>[/tt] przekierowuje wyjście do pliku w trybie write, czyli nadpisując go. Z kolei [tt]>>[/tt] będzie pracować w trybie append, i wpadniesz w pętlę bez końca. Tak jak robisz jest najlepiej. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Karlik Napisano Kwiecień 23, 2007 Zgłoszenie Share Napisano Kwiecień 23, 2007 Heh..myślałem bardziej nad: sed -i s/"0,15,30,45 * * * * root /root/bin/wykonuj.sh"/"* * * * * root /root/bin/wykonuj.sh"/"" /etc/crontab ale skoro Ci działa to najważniejsze, pierwszy raz widzę takie użycie, dla mnie to też kształcące Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
blacklight Napisano Lipiec 10, 2007 Zgłoszenie Share Napisano Lipiec 10, 2007 U mnie sytuacjia wygląda nastepująco. Za pomoca skryptu php tworze dynamicznie plik crona. a potem nadpisuje sytemowy świerzo wygenerowanym. Plik generowany jest identyczny z oryginalem z tym ze nie wykonuje sie tzn crontab nie potrafi z niego niczego uruchomic. Ponadto w logach nie widać żeby mial z uruchomieniem problemy. Mimo wszystko wpisujac crontab -e widze ze zmiany z wygenerowanego pliku sa wprowadzone i teraz co ciekawe gdy cokolwiek zmienie wasnie podczas crontab -e wszystko dziala. Nawet spacja czy enter powoduje ze hula. Za pomoca skryptu dodaje znak entera na koncu wiec to nie powinien byc powod nie dzialania. Pomaga także reset crontaba po zmianach ale nie wiem jak umieścić taka linie resetujaca w skrypcie php. Ma ktos pomysl na rozwiazanie tej kwestii? Albo jakies alternatywne rozwiazanie? z gory dziekuje Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się