Jak uruchomić wiele poleceń w jednym zadaniu Cron
- 946
- 244
- Natan Cholewa
Crontab to narzędzie do uruchamiania zaplanowanych zadań w regularnych odstępach czasu w systemach UNIX-Linux. Pozwala nam zaplanować wiele zadań CRON, aby uruchomić jednocześnie. Możemy zaplanować dowolne polecenie powłoki lub skrypt, które można wykonać na terminalu. Każda zaplanowana praca w Crontab jest oddzielona nową linią. Możemy również zdefiniować wiele poleceń lub scenariuszy w jednym zadaniu CRON, aby uruchomić jeden po drugim.
Jak oddzielić dwa polecenia w Linux
Możesz oddzielić dwa lub więcej poleceń za pomocą półkolisów (;), logicznych i (&&) lub operatorów logicznych lub (||). Którego z tych operatorów, których używamy, jest całkowicie zależy od wymagań. Oto podstawowe zrozumienie korzystania z tych operatorów.
- Semicolon (;): służy do oddzielania wielu poleceń. To wykonuje wszystkie polecenia bez sprawdzania statusu wyjścia poprzednich poleceń.
command_1; command_2; Command_n
- Logiczne i (&&): jest używany do oddzielania poleceń, gdy chcemy wykonać następne polecenie tylko wtedy, gdy poprzednie polecenie zostało pomyślnie wykonane ze statusem wyjścia 0.
Command_1 && command_2 && command_n
- Logiczny lub (||): jest używany do oddzielania poleceń, gdy chcemy wykonać następne polecenie tylko wtedy, gdy poprzednie polecenie nie powiodło.
Command_1 || Command_2 || Command_n
Jak zaplanować pracę CRON
Najpierw przejdź do użytkownika, z którego chcesz uruchomić zadanie CRON. Następnie otwórz edytor Crontab, uruchamiając następujące polecenie.
crontab -e
Następnie dodajesz wpis zadania CRON do pliku jak poniżej:
Polecenia crontab oddzielone logicznym iUruchamianie wielu poleceń w jednym zadaniu CRON
Omówmy rzeczywiste przykłady uruchamiania wielu poleceń z crontab z różnymi 2 separacją.
- Za pomocą półkollonu (;)
Możemy oddzielić dwa lub więcej poleceń półkolisami, które nie wymagają sprawdzania statusu wyjścia z poprzedniego polecenia. Na przykład musisz zmienić zgodę wszystkich plików na 777, ale musisz ustawić 777 dla katalogu Logs.
0 2 * * * chmod -r 755/var/www/myApp; CHMOD -R 777/var/www/MyApp/Logs1 0 2 * * * chmod -r 755/var/www/myApp; CHMOD -R 777/var/www/MyApp/Logs Polecenia crontab oddzielone na półkolis (;)
- Używając logicznych i (&&)
Użyj tego operatora, w którym chcesz uruchomić następne polecenie tylko wtedy, gdy poprzednia jest pomyślnie wykonana (status wyjścia 0). Na przykład chcesz uruchomić kopię zapasową.sh po pomyślnej zmianie na katalog /kopie zapasowe.
0 2 * * * CD /Backup && Bash Backup.cii1 0 2 * * * CD /Backup && Bash Backup.cii Polecenia crontab oddzielone logicznym i
- Korzystanie z logicznych lub (||)
Użyj operatora logicznego lub (||), gdy chcesz uruchomić następne polecenie tylko wtedy, gdy poprzednia jest nieudana (status wyjścia non-0). Na przykład chcesz wyświetlić wiadomość lub wysłać wiadomość e -mail, jeśli plik kopii zapasowej nie został znaleziony.
0 2 * * * [-f /backup /mydb -'date +%f '.SQL] || Echo „Dzisiejszy plik kopii zapasowej nie znaleziono”
Polecenia crontab oddzielone logicznym i1 0 2 * * * [-f /backup /mydb -'date +%f '.SQL] || Echo „Dzisiejszy plik kopii zapasowej nie znaleziono”
Wniosek
W tym poście na blogu dowiedziałeś się o uruchomieniu wielu poleceń w jednym wpisie pracy CRON. Omówiłem także różne opcje oddzielenia poleceń. Artykuł zawiera podstawowe szczegóły dotyczące każdego separatora używanego do oddzielania poleceń.
- « (Rozwiązane) SSH Connection odmówił Ubuntu i Debian
- (Rozwiązane) Zmienna środowiskowa java_home nie jest poprawnie zdefiniowana na macOS »