Tìm hiểu Crontab trong Linux

22
0

1. Cron là gì?

Cron là một công cụ quản lý thời gian trên các hệ thống Unix và tương tự. Nó cho phép người dùng lên lịch thực thi các tác vụ tự động theo các khoảng thời gian xác định. Các tác vụ này được gọi là cron job.

2. Định dạng của Cron

Cron sử dụng một định dạng đơn giản để xác định thời gian chạy của các cron job. Định dạng cron bao gồm năm phần cơ bản, được phân tách bằng dấu cách hoặc tab:

* * * * * <command>

Các phần của định dạng cron lần lượt là:

  1. Phút (0-59)
  2. Giờ (0-23)
  3. Ngày trong tháng (1-31)
  4. Tháng (1-12)
  5. Ngày trong tuần (0-7, trong đó 0 và 7 đều đại diện cho Chủ nhật)
  6. <command>: Là lệnh hoặc tác vụ mà bạn muốn cron job thực thi.
Tìm hiểu Crontab trong Linux

2.1 Định dạng theo phút

Phần phút trong cron job xác định các phút nào trong một giờ mà cron job sẽ chạy. Ví dụ:

  • 0 * * * * <command>: Cron job sẽ chạy vào phút thứ 0 của mỗi giờ.
  • */5 * * * * <command>: Cron job sẽ chạy mỗi 5 phút.
  • 10,20,30 * * * * <command>: Cron job sẽ chạy vào phút thứ 10, 20 và 30 của mỗi giờ.

2.2 Định dạng theo giờ

Phần giờ trong cron job xác định các giờ nào trong một ngày mà cron job sẽ chạy. Ví dụ:

  • 0 8 * * * <command>: Cron job sẽ chạy vào 8h00 sáng mỗi ngày.
  • */2 * * * * <command>: Cron job sẽ chạy mỗi 2 giờ.
  • 0 9,18 * * * <command>: Cron job sẽ chạy vào 9h00 sáng và 6h00 tối mỗi ngày.

2.3 Định dạng theo ngày

  • 0 0 1 * * <command>: Cron job sẽ chạy vào ngày đầu tiên của mỗi tháng.
  • 0 12 15 * * <command>: Cron job sẽ chạy vào ngày 15 của mỗi tháng lúc 12h00 trưa.

2.4 Định dạng theo tháng

Phần tháng trong cron job xác định các tháng nào trong năm mà cron job sẽ chạy. Ví dụ:

  • 0 0 1 1 * <command>: Cron job sẽ chạy vào ngày 1 tháng 1 hàng năm.
  • 0 0 * 1,4,7,10 * <command>: Cron job sẽ chạy vào ngày đầu tiên của các tháng 1, 4, 7 và 10.

2.5 Định dạng theo tuần

Phần ngày trong tuần trong cron job xác định các ngày trong tuần mà cron job sẽ chạy. Đây là một điểm khác biệt so với các phần trước đó. Trong cấu trúc này, số 0 và 7 đều đại diện cho Chủ nhật. Ví dụ:

  • 0 0 * * 0 <command>: Cron job sẽ chạy vào Chủ nhật hàng tuần.
  • 0 12 * * 1-5 <command>: Cron job sẽ chạy vào giữa ngày từ thứ Hai đến thứ Sáu hàng tuần.

2.6 Định dạng thời gian lặp lại

Khi tạo cron job, ký hiệu dấu gạch chéo chia các phần trong cú pháp cron. Dấu gạch chéo / có ý nghĩa đặc biệt trong cron và được sử dụng để xác định một khoảng thời gian lặp lại.

  • */10 * * * * <command>: Cron job sẽ chạy mỗi 10 phút.
  • 0 */3 * * * <command>: Cron job sẽ chạy mỗi 3 giờ.

3. Kết luận

Cron là một công cụ mạnh mẽ để lên lịch thực thi các tác vụ tự động trên các hệ thống Unix. Bằng cách sử dụng định dạng cron và cấu trúc theo các phần như phút, giờ, ngày, tháng và tuần, bạn có thể tạo ra các cron job linh hoạt và tùy chỉnh theo nhu cầu của mình.

Hãy thử tạo và quản lý cron job của riêng bạn để tự động hóa các tác vụ thường xuyên và tiết kiệm thời gian.

Đỗ Trung Quân
WRITTEN BY

Đỗ Trung Quân

Nguồn nội dung này đến từ Website DoTrungQuan.info

Trả lời