Hướng Dẫn Sử Dụng Crontab Trong Linux Để Lên Lịch Tác Vụ
1. Cú Pháp Cơ Bản Của Crontab
Một dòng trong file crontab
thường có cấu trúc như sau:
* * * * * command_to_execute - - - - - | | | | | | | | | +---- Tháng (1 - 12) | | | +------ Ngày trong tuần (0 - 6) (Chủ nhật = 0) | | +-------- Ngày trong tháng (1 - 31) | +---------- Giờ (0 - 23) +------------ Phút (0 - 59)
Ví dụ:
30 2 * * * /path/to/script.sh
Lệnh trên sẽ chạy script.sh
vào lúc 2:30 sáng mỗi ngày.
2. Các Bước Sử Dụng Crontab
- Mở file crontab để chỉnh sửa
Sử dụng lệnh:
Điều này sẽ mở filecrontab -e
crontab
của người dùng hiện tại trong trình soạn thảo mặc định. - Thêm lệnh vào file
- Nhập dòng lệnh với cấu trúc như trên.
- Lưu và thoát (tùy theo trình soạn thảo:Ctrl+O
vàCtrl+X
với nano, hoặc:wq
với vi/vim). - Kiểm tra crontab
Xem các lệnh đã được lên lịch:crontab -l
3. Ví Dụ Lên Lịch Tác Vụ
- Chạy một script vào mỗi phút:
* * * * * /path/to/script.sh
- Chạy vào 3 giờ sáng mỗi ngày:
0 3 * * * /path/to/backup.sh
- Chạy vào thứ Hai hàng tuần lúc 5:30 chiều:
30 17 * * 1 /path/to/report.sh
- Chạy mỗi ngày đầu tháng vào 12 giờ đêm:
0 0 1 * * /path/to/cleanup.sh
4. Một Số Ký Hiệu Đặc Biệt
*
: Tất cả các giá trị có thể (ví dụ: mọi phút, mọi giờ).,
: Danh sách giá trị (ví dụ:1,15,30
để chọn ngày 1, 15, và 30).-
: Khoảng giá trị (ví dụ:1-5
cho các ngày từ 1 đến 5)./
: Bước nhảy (ví dụ:*/5
để chạy mỗi 5 phút).
Ví dụ:
*/10 * * * * /path/to/task.sh
Lệnh trên sẽ chạy mỗi 10 phút.
5. Kiểm Tra Log Cron
Log của cron thường nằm ở:
/var/log/syslog # (Trên Ubuntu/Debian)
/var/log/cron # (Trên CentOS/Red Hat)
Xem log:
grep CRON /var/log/syslog
6. Xóa Crontab
Để xóa toàn bộ các lệnh crontab:
crontab -r
Nếu bạn cần thêm ví dụ hoặc giải thích chi tiết, hãy để lại bình luận nhé! 😊