crontab -e, sau đó 0 * * * * = mỗi giờ, Nơi được lưu trữ


14

Sau sudo crontab -e (nó đã viết "/tmp/crontab.XXXX70pN9h" 1L, 19C 1,1 Tất cả

Sau đó tôi lưu tập tin. Và để kiểm tra ..? (làm thế nào? tôi không biết)

And to check I 
ps -e | grep cron
29818 ?        00:00:00 cron

Vì vậy .. nhưng tôi quyết định kiểm tra lại nhưng

sudo cat /etc/cron.hourly
cat: /etc/cron.hourly: Is a directory
xi@localhost ~ $ sudo ls /etc/cron.hourly

Không có gì! tức là trong thư mục

Theo tôi hiểu 0 đầu tiên trong vị trí giờ có nghĩa là mỗi giờ?


Ok, tôi sẽ đợi trong một giờ (khoảng cách ít nhất trong tài liệu)
Xsi

Bạn chắc chắn muốn kiểm tra một câu hỏi của tôi. Nó có câu trả lời của Stephane Chazelas giải thích cách bạn có thể tạo một vỏ tương tác giống hệt với môi trường mà công việc định kỳ của bạn sẽ thấy. Nếu bạn thực hiện thủ tục nhỏ của anh ấy, bạn sẽ nhận được một lời nhắc và bạn có thể kiểm tra từng bước cronjob của mình và xem nó thất bại ở đâu. unix.stackexchange.com/a/56503/16841 Chắc chắn rằng nó không phù hợp 100% cho câu hỏi của bạn, nhưng nó có thể giúp bạn khắc phục sự cố crontab.
jippie

Câu trả lời:


24

Các trường trong cron là:

m      h       dom             mon     dow          command
Minute Hour    Day of Month    Month   Day of week  <command>

0 * * * * <command>sau đó, bạn dịch thành "Thực thi lệnh vào mỗi giờ, mỗi ngày, mỗi tháng và mỗi ngày trong tuần, nếu phút là 0"

Bạn có thể liệt kê crontab của bạn bằng cách sử dụng crontab -l, như delh đã nêu.

Lấy liên kết này ở đây, có một số ví dụ Cron thực tế


ngày [-u | --utc | --universal] [MMDDhhmm [[CC] YY] [. ss]] nó giống như, nhưng ngược lại visa
Xsi

Điều này có liên quan gì với cron?
Bonsi Scott

9

Của bạn crontabcron.hourlylà các thực thể riêng biệt. Đặt một cái gì đó vào của bạn crontabkhông đặt nó vào cron.hourly, ngay cả khi nó chạy mỗi giờ. Đặt một tập lệnh vào cron.hourlychỉ là một cách khác để nó chạy mỗi giờ, đó là, crontrình nền của bạn kiểm tra cả của bạn crontab cron.hourly . Có nó trong cả hai sẽ chạy nó hai lần.


Thứ Sáu, ngày 9 tháng 11 15:16:01 EET 2012 xi @ localhost ~ $ ls /var/log/cron.log ls: không thể truy cập /var/log/cron.log: Không có tệp hoặc thư mục như vậy
Xsi

3

Bạn có thể kiểm tra xem crontab đã được cài đặt chưa:

sudo crontab -l

Mỗi giờ một thông điệp tường trình sẽ xuất hiện trong /var/log/syslogđó nó được thực thi.

Đọc thêm:

http://www.linuxweblog.com/crotab-tutorial

Tôi tin rằng số 0 đầu tiên (0) là số phút. Nhưng nếu bạn nói rằng bạn muốn một cái gì đó được thực hiện khi số phút bằng 0 thì nó sẽ được thực hiện mỗi giờ. Như chỉ một lần một giờ, phút là bằng không.



1

Nếu bạn thực sự đang tìm kiếm các tệp cron của người dùng để xem khi nào nó thay đổi hoặc có gì đó có thể được tìm thấy /var/spool/cron/nhưng bạn có thể không nên thao tác các tệp theo cách thủ công.


Không quá nhiều có lẽ là không nên như không nên . Trình cronnền sẽ không nhận thấy thay đổi nếu bạn chỉnh sửa các tệp trực tiếp. Thay vào đó, sử dụng crontab -lđể liệt kê cho người dùng hiện tại, crontab -eđể chỉnh sửa cho người dùng hiện tại và / hoặc bao gồm -u {user}cả để truy cập người dùng khác nhau đó crontab. Đây là tất cả được xác định rõ trong trang người đàn ông chocrontab .
roaima

Tôi tin rằng có nhiều cách để thiết lập cronđể tự động kiểm tra các thay đổi nếu bạn thực sự cần cập nhật chúng theo cách thủ công.
Molimo

Nếu bạn cần cập nhật chúng bằng tay thì hãy sử dụng crontabgiao diện; đó là những gì nó ở đó cho. Nếu không, bạn sẽ phải dừng lại và khởi động lại crondaemon.
roaima
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.