Czy istnieje sposób dodawania linii do crona użytkownika za pomocą skryptu?
Zwykle robię to za pomocą crontab -e
, ale chciałbym zautomatyzować to zadanie za pomocą skryptu powłoki.
scripts
cron
automation
Adam Matan
źródło
źródło
Odpowiedzi:
Możesz powtórzyć linię w dolnej części bieżącego pliku crontab w następujący sposób:
źródło
cron
zmianie.crontab
Jeśli chcesz edytować wartość w swoim crontab, możesz zrobić coś w stylu:
Oczywiście musisz uważać na swoją zamianę, aby upewnić się, że pasuje ona tylko do linii, które chcesz zmienić; w przeciwnym razie wszystkie
foos
zostaną zmienione nabars
(w tym przykładzie).Zaletą tej metody jest to, że nie zastępujesz całego pliku crontab. (Metaforyczna pinceta zamiast młota.)
Możesz użyć dowolnego polecenia edycji zamiast sed . Na przykład, jeśli chcesz użyć ed do poprawienia linii, która zaczyna się tak:
Powiedzmy, że ten wiersz jest jednym z wielu wierszy lub masz wiele różnych crontabów do aktualizacji w różnych systemach i wiesz tylko, że twoja linia będzie jedyną linią z zawartym
flitch
w niej terminem .Może wyglądać następująco:
Teraz muszę przyznać, że prawie 100% czasu sed zrobi to, co zrobi ed , ale zawsze dobrze jest mieć dodatkowe narzędzie na szwajcarskim nożu wojskowym. ^. ^
źródło