Chạy cron cứ sau 10 phút


16

Tôi có một kịch bản python trên máy tính để bàn của mình: /home/ceasor/Desktop/script.py

Trong /etc/crontab, tôi đã viết:

0 */2   * * *   ceasor    sudo python  /home/ceasor/Desktop/script.py

Kịch bản python không được chạy. Làm thế nào để tôi chạy cron cứ sau 10 phút?


2
Tại sao bạn gọi sudo python? Nếu bạn muốn chạy nó dưới quyền root, chỉ cần chỉ định người dùng đó trong của bạn crontab. Cũng 0 */2có nghĩa là cứ sau 2 giờ chứ không phải cứ sau 10 phút.
Joachim Sauer

Nó ở trên máy tính để bàn của bạn? Sau đó, bạn có con đường sai trong crontab của bạn
Ocaso Protal

1
tài khoản của bạn có thể chạy mật khẩu sudo w / oa không? Con trăn IS trong con đường mà cron thấy?. cũng là crontab nói bao giờ 2 giờ. nếu bạn muốn cứ sau 10 phút sử dụng * / 10 * * * *
Doon

Câu trả lời:


26

Dòng của bạn có nghĩa là chạy ở 0 phút mỗi hai giờ (tức là 00:00, 02:00, 04:00, v.v.).

Nếu bạn muốn chạy một cái gì đó cứ sau 10 phút:

*/10 * * * *  ceasor    sudo python  /home/ceasor/Desktop/script.py

Tôi lấy tự do để sửa sai con đường.

FYI, đây là ý nghĩa của các giá trị:

         field          allowed values
          -----          --------------
          minute         0-59
          hour           0-23
          day of month   1-31
          month          1-12 (or names, see below)
          day of week    0-7 (0 or 7 is Sun, or use names)
          username       any user from the system
          command        the command you want to run

Và nếu bạn muốn chạy một cái gì đó với quyền root, bạn nên đặt rootthay vì ceasortên người dùng và bỏ tên sudo.


13

Chạy một lệnh cứ sau 10 phút:

*/10 * * * *   ceasor    sudo python  /home/ceasor/script.py

*/10thông báo sẽ bắn cronjob cứ sau 10 phút.

Bạn cũng có thể liệt kê mỗi phút mà bạn muốn nó tắt:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py

4

Để chạy một cái gì đó cứ sau mười phút, tôi thường đặt một cái gì đó như sau vào crontab của mình:

0,10,20,30,40,50 * * * * sudo python /home/ceasor/Desktop/script.py

Điều chỉnh 0,10,20, ... khi bạn cần đạt đến số phút bạn muốn.


bạn có thể sử dụng * / 10 thay vì liệt kê, điều đó có nghĩa là cứ sau 10 phút
krtek

1
@Krtek: Vâng, điều đó đã được nêu trong các câu trả lời khác. Cả hai cách đều hoạt động và tôi nghĩ sẽ tốt cho OP khi biết các lựa chọn thay thế.
GreenMatt

3

Cứ mười phút bạn cần

  */10 * * * *     ceasor         sudo python /home/ceasor/Desktop/script.py

và nếu tập lệnh nằm trong Desktop/bạn cần sử dụng đường dẫn đó như trong ví dụ của tôi ở đây.

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.