Làm thế nào tôi có thể chạy lệnh mỗi sáu giờ mỗi ngày?
Tôi đã thử như sau, nhưng nó không hoạt động:
/6 * * * * * mycommand
Làm thế nào tôi có thể chạy lệnh mỗi sáu giờ mỗi ngày?
Tôi đã thử như sau, nhưng nó không hoạt động:
/6 * * * * * mycommand
Câu trả lời:
Bạn đã quên một *
, và bạn có quá nhiều lĩnh vực. Đó là giờ bạn cần quan tâm
0 */6 * * * /path/to/mycommand
Điều này có nghĩa là cứ sau sáu giờ bắt đầu từ 0, tức là vào giờ 0, 6, 12 và 18 mà bạn có thể viết là
0 0,6,12,18 * * * /path/to/mycommand
15 15,23,05,11 * * * /path/to/mycommand
sao?
0 15,21,3,9 * * *
)
Bạn nên bao gồm một đường dẫn đến lệnh của bạn, vì cron chạy với môi trường cắt giảm rộng rãi. Bạn sẽ không có tất cả các biến môi trường bạn có trong phiên shell tương tác của bạn.
Đó là một ý tưởng tốt để chỉ định một đường dẫn tuyệt đối đến tập lệnh / nhị phân của bạn hoặc xác định PATH trong chính crontab. Để giúp gỡ lỗi mọi vấn đề, tôi cũng sẽ chuyển hướng thiết bị xuất chuẩn / err sang tệp nhật ký.
export variable=something
tôi vẫn sử dụng chúng trong cùng một tập lệnh? và tôi sử dụng lệnh date rất nhiều trong kịch bản
Hãy chú ý theo cú pháp này :
* */6 * * *
Điều này có nghĩa là 60 lần (mỗi phút) cứ sau 6 giờ,
không phải
một lần cứ sau 6 giờ.
0 */6 * * *
crontab cứ sau 6 giờ là một lịch trình cron thường được sử dụng.
Bạn cần sử dụng *
0 */6 * * * /path/to/mycommand
Ngoài ra, bạn có thể tham khảo https://crontab.guru/ sẽ giúp bạn lên lịch tốt hơn ...
Thử:
0 */6 * * * command
. * phải