Đây là công việc định kỳ của bạn:
*/2 * * * *
Nhưng sau đó bạn trạng thái:
Làm thế nào để bỏ qua "0" phút "0" giờ (00:00) trong cron? Tôi làm điều này vì cron này phụ thuộc vào một cron khác chạy một lần mỗi ngày lúc 12 giờ sáng. Vì vậy, tôi không muốn họ chồng lên nhau.
Sự cố không phải là công việc cron mà là logic lôgic của bạn. Có lẽ bạn có thể làm một cái gì đó như tạo ra một loại chỉ số trong công việc đầu tiên mà công việc thứ hai sẽ tiếp tục để họ không xung đột.
Có lẽ bạn chỉ nên thay đổi cron của bạn là không thanh nha, nhưng cụ thể của mỗi 2 phút như thế này:
2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,50,52,54,56,58 * * * *
Một khái niệm sẽ được kết hợp một khoảng thời gian (2-58
) với một tần số (*/2
), nhưng không rõ ràng nếu điều này có thể làm việc.
2-58/2 * * * *
EDIT: Theo những nhận xét trái bởi các poster ban đầu:
Nói tóm lại, tôi cần cron này để chạy mỗi 2 phút trừ 00:00.
Nếu đó là trường hợp, bạn có thể phải thiết lập một kết hợp của công việc cron như thế này:
*/2 1-23 * * *
2-58/2 0 * * *
Mục cron đầu tiên sẽ chạy công việc mỗi 2
phút từ 01:00 đến 11: 00:00.
Mục nhập cron tiếp theo sẽ chạy công việc sau mỗi 2
phút từ 2-58
phút chỉ vào lúc nửa đêm. Vì công việc thứ hai này bỏ qua 0
trong thời gian 0
giờ nửa đêm, kết hợp này sẽ phù hợp với bạn. Nhưng điều đó nói rằng, loại logic nhập kép này là lý do tại sao nó thực sự khuyến khích các nhà phát triển mở rộng logic ứng dụng của họ để tránh các tình huống nhất định mà nó sẽ không hoạt động.
Ví dụ: tôi có một số tập lệnh bash tạo tệp khóa trong thư mục Unix /tmp
tiêu chuẩn.Chúng được thiết lập để chạy mỗi 5 phút, nhưng bản thân kịch bản có logic để đảm bảo điều đầu tiên nó làm trước khi bất cứ điều gì là để kiểm tra xem khóa đó có mặt hay không. Nếu khóa là có? Không làm gì cả. Nếu khóa không có ở đó, đi hạt!
Để người nào đó bỏ phiếu, tại sao ?? Nếu bạn không có câu trả lời, chỉ cần bỏ qua thay vì vô nghĩa này xin vui lòng! –
Cách tốt nhất để xử lý một cái gì đó như thế này là có cron job chạy mỗi 2 phút, nhưng điều chỉnh logic trong script của bạn (PHP?) Chỉ đơn giản là không chạy ở đầu giờ trong bất kỳ trường hợp nào. – JakeGould
@JakeGould đó là những gì tôi đã làm nhưng tôi nghĩ rằng nên có một cách để làm điều đó bằng cách sử dụng cron. –