Liệu `at` có chạy lệnh sau nếu máy tính tắt vào thời gian được chỉ định không?


20

Tôi muốn lên lịch công việc với at, nhưng tôi không chắc điều gì sẽ xảy ra nếu máy tính bị treo vào thời điểm được chỉ định: Lệnh sẽ được thực thi ngay khi máy tính thức dậy (như với anacron) hay nó sẽ không được thực thi (thích với cron)?

Nếu bạn chỉ định một công việc hoàn toàn chạy vào một thời điểm và ngày cụ thể trong quá khứ, công việc đó sẽ chạy càng sớm càng tốt.

Đó là những gì trang web nói về điều đó, tuy nhiên nó không hoàn toàn khớp với trường hợp của tôi: Tôi không muốn chỉ định một công việc sẽ chạy trong quá khứ, tôi muốn chạy nó trong tương lai và hỏi atsẽ xử lý nó như thế nào nếu máy tính Đang ngủ rồi.

Đây không phải là bản sao của Run at lệnh khi máy tính đang ngủ bởi vì câu hỏi này hỏi liệu atmáy tính có đánh thức máy tính để thực thi lệnh hay không, nó cũng không phải là bản sao của Làm thế nào để ngăn chặn atd chạy các công việc trong quá khứ? bởi vì đây là về cách ngăn chặn atviệc thực thi những công việc cũ của người Viking (với một câu trả lời rất hay!).

Câu trả lời:


20

atthực thi bất kỳ lệnh nào cần được thực thi trước đó khi bạn đánh thức máy tính, nhưng có thể mất vài phút để làm điều đó. Nó thậm chí không quan trọng cho dù bạn đã cho nó một ngày cụ thể , vì bạn có thể kiểm tra dễ dàng:

$ sudo date -s "2017-12-15 23:57:00"
$ at 23:59 17-12-15 <<<'echo executed >at_test'
job 1 at Fri Dec 15 23:59:00 2017
# suspend, wake after four minutes
$ date
Sat Dec 16 00:01:17 CET 2017
$  cat <at_test || atq
bash: /home/dessert/at_test: No such file or directory
1       Fri Dec 15 23:59:00 2017 a dessert
# wait a few minutes
$  cat <at_test || atq
executed

Vì vậy, một công việc bạn thêm bằng cách sử dụng at 20:00 todayrất có thể được thực hiện đột ngột ba ngày sau khi bạn bật lại máy tính. Nếu bạn muốn ngăn chặn điều này, bạn có thể kiểm tra thời gian trong chính công việc như được đề xuất ở đây: Làm thế nào để ngăn chặn atd chạy các công việc trong quá khứ?

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.