Cách chạy cron job cứ sau 2 giờ


237

Làm cách nào tôi có thể viết một Crontab sẽ chạy /home/username/test.shtập lệnh của mình sau mỗi 2 giờ?

Câu trả lời:


385

Cứ làm đi:

0 */2 * * *  /home/username/test.sh 

Số 0 ở đầu có nghĩa là chạy ở phút thứ 0. (Nếu là *, tập lệnh sẽ chạy mỗi phút trong mỗi giờ.)

Đừng quên, bạn có thể kiểm tra syslog để xem nó có thực sự chạy không!


@ ernest-conill Làm thế nào bạn có thể nói? lịch sử sửa đổi không chứa phiên bản bao gồm các mã khác nhau: stackoverflow.com/posts/6423532/revutions
tutuDajuju

102

Dòng nên đọc một trong hai:

0 0-23/2 * * * /home/username/test.sh

hoặc là

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /home/username/test.sh

3
"0-23 / 2" - trong khoảng thời gian từ 0 đến 23 giờ cứ sau 2 giờ.
James Anderson

0-23 / 2 tốt hơn nhiều so với * / 2
Kad

2
@Kad sao lại như vậy?
Ciprian Tomoiagă

Còn giờ lẻ thì sao? Tôi có thể thêm +1
Shravya Boggarapu

nếu bạn thân của bạn hỗ trợ nó, 0-23/2là mỗi giờ chẵn và 1-23/2mỗi giờ lẻ, nhưng tôi */2vẫn thích hơn .
Betlista


4

0 * / 1 * * * xông Vào phút 0 vừa qua mỗi giờ.

0 * / 2 * * * xông vào phút 0 qua mỗi 2 giờ.

Đây là cách thích hợp để đặt cronjobs cho mỗi giờ.


0

Để vào crontab:

crontab -e

ghi điều này vào tập tin:

0 */2 * * * python/php/java yourfilepath

Thí dụ :0 */2 * * * python ec2-user/home/demo.py

và đảm bảo rằng bạn đã giữ một dòng trống sau công việc định kỳ cuối cùng trong tệp crontab của bạn

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.