15%

Alexhost spełnia życzenia

Weź udział w ankiecie i wygrywać nagrody

ALEX26
Rozpocznij
25.12.2024

Jak wyświetlić i wylistować zadania Cron za pomocą Crontab

Narzędzie cron w systemach operacyjnych podobnych do Unix pozwala użytkownikom planować zadania (komendy lub skrypty) do automatycznego uruchamiania w określonych czasach lub interwałach. Niezależnie od tego, czy utrzymujesz serwer, czy zarządzasz zautomatyzowanymi zadaniami na lokalnej maszynie, cron jest niezbędnym narzędziem dla administratorów systemów i programistów.

Ten artykuł wyjaśnia, jak wyświetlać i listować zadania cron za pomocą komendy

crontab
, aby pomóc w efektywnym zarządzaniu zaplanowanymi zadaniami.

Co to jest komenda Crontab?

Crontab (skrót od „cron table”) to plik, który definiuje zaplanowane zadania dla demona cron. Każdy użytkownik w systemie, w tym użytkownik

root
, może mieć własny crontab, który określa, które zadania powinny być zautomatyzowane.

Wpis w crontabie ma następującą składnię:


* * * * * command_to_be_executed
| | | | |
| | | | +----- day of the week (0–7) (Sunday = 0 or 7)
| | | +---------- month (1–12)
| | +--------------- day of the month (1–31)
| +-------------------- hour (0–23)
+------------------------- minute (0–59)

Ta struktura pozwala na precyzyjną kontrolę nad tym, kiedy zadania są wykonywane, co czyni cron potężnym narzędziem automatyzacji.

Jak listować zadania cron za pomocą Crontab

Komenda

crontab
jest podstawowym narzędziem do zarządzania zadaniami cron. Poniżej przedstawiono najczęstsze sposoby listowania zadań cron.

1. Wyświetl swoje własne zadania cron

Aby wyświetlić zadania cron dla aktualnie zalogowanego użytkownika, uruchom:

crontab -l

Ta komenda wyświetla wszystkie zaplanowane zadania cron dla bieżącego użytkownika. Jeśli nie ma zadań cron, może zwrócić pusty wynik lub komunikat wskazujący, że nie zdefiniowano crontaba.

Przykładowy wynik:


# m h dom mon dow command
0 0 * * * /home/user/backup.sh
30 2 * * 7 /home/user/scripts/cleanup.sh

W tym przykładzie:

  • Skrypt kopii zapasowej uruchamia się codziennie o północy.
  • Skrypt czyszczenia uruchamia się w każdą niedzielę o 2:30.

2. Lista zadań cron dla innego użytkownika

Jeśli masz

sudo
lub uprawnienia roota, możesz wyświetlić zadania cron dla innego użytkownika, używając flagi
-u
:

sudo crontab -l -u username

Zamień

username
na rzeczywistą nazwę użytkownika. Na przykład:

sudo crontab -l -u john

To wyświetli wszystkie zadania cron zaplanowane dla określonego użytkownika.

3. Lista zadań cron w systemie

Oprócz zadań cron specyficznych dla użytkowników, istnieją zadania cron w systemie zaplanowane przez system lub użytkownika root. Zazwyczaj są one przechowywane w:

  • /etc/crontab
  • /etc/cron.d/
  • /var/spool/cron/crontabs/

Aby wyświetlić główny plik crontab systemu, uruchom:

cat /etc/crontab

Przykładowy wynik:


SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

Ta konfiguracja planuje zadania konserwacyjne na poziomie systemu co godzinę, codziennie, co tydzień i co miesiąc.

Aby listować dodatkowe pliki cron systemu, uruchom:

ls /etc/cron.d/

Każdy plik w tym katalogu może definiować dodatkowe zaplanowane zadania dla usług systemowych.

4. Wyświetl zadania cron w /var/spool/cron

Pliki crontab specyficzne dla użytkowników są zazwyczaj przechowywane w

/var/spool/cron/crontabs
. Aby je wylistować:

ls /var/spool/cron/crontabs

Aby wyświetlić zawartość pliku crontab konkretnego użytkownika:

cat /var/spool/cron/crontabs/username

To zapewnia ten sam wynik co

crontab -l -u username
.

Edytowanie zadań cron

Aby edytować lub dodawać zadania cron dla bieżącego użytkownika, uruchom:

crontab -e

To otworzy plik crontab w domyślnym edytorze tekstu. Po zapisaniu i wyjściu zmiany wchodzą w życie natychmiast.

Przykład: uruchom skrypt codziennie o 3:00:

0 3 * * * /home/user/script.sh

Typowe komendy listowania crontab

  • Lista zadań cron bieżącego użytkownika:
    crontab -l
  • Lista zadań cron innego użytkownika (wymagane sudo):
    sudo crontab -l -u username
  • Wyświetl crontab systemowy:
    cat /etc/crontab
  • Lista plików cron w /etc/cron.d/:
    ls /etc/cron.d/
  • Lista crontab użytkowników:
    ls /var/spool/cron/crontabs

Podsumowanie

Wyświetlanie i listowanie zadań cron za pomocą

crontab
to prosty, ale potężny sposób na zarządzanie zaplanowanymi zadaniami w systemach podobnych do Unix. Niezależnie od tego, czy zajmujesz się osobistą automatyzacją, czy zadaniami konserwacyjnymi w systemie, zrozumienie tych komend zapewnia, że Twoje zadania będą działać niezawodnie i na czas.

Opanowując cron, możesz zautomatyzować powtarzalne zadania, zarządzać kopiami zapasowymi i utrzymywać spójną realizację skryptów w całym swoim środowisku.

15%

Alexhost spełnia życzenia

Weź udział w ankiecie i wygrywać nagrody

ALEX26
Rozpocznij