Câu hỏi Chạy tập lệnh python khi khởi động


Tôi đang cố gắng để có được một mã python đơn giản mà tôi phải chạy trong nền lúc khởi động, và ở lại chạy.

Các tùy chọn tốt nhất mà tôi đã tìm thấy cho đến nay là sử dụng Upstart. Tôi đã viết như sau .conf tập tin trong /etc/init/ thư mục và dịch vụ đi kèm với initctl list lệnh tuy nhiên khi tôi start dịch vụ và sau đó kiểm tra lại danh sách nó không hoạt động. Các .conf dưới đây.

Nếu ai đó có thể giúp tôi thì sẽ được nhiều người đánh giá cao

start on runlevel [2345]
stop on runlevel [016]
respawn    
script    
    exec python /some/directory/python_code.py    
end script

2
2017-07-21 23:56


gốc


Bạn đã kiểm tra xem mã python của bạn có đang chạy đúng không? Nó có thể bị rơi hoặc chỉ thoát ra bình thường. - superdesk
Con trăn da trăn của bạn có nằm ở nền không? Nếu vậy, bạn sẽ phải sử dụng hoặc mong đợi ngã ba hoặc mong đợi daemon trong cấu hình mới nổi. Xem sách dạy nấu ăn Upstart: upstart.ubuntu.com/cookbook/#how-to-establish-fork-count - CameronNemo
@superdesk mã python của tôi chạy tốt khi tôi chạy nó bằng cách nhập 'python python_code.py'. Tuy nhiên, chính mã python là một vòng lặp vô hạn. Điều đó có gây ra bất kỳ vấn đề nào khi khởi động không? - Caleb
Bạn có thực sự cần chạy nó không khởi động, hoặc sẽ đăng nhập làm gì? Nếu vậy, nó có thể được thực hiện thực sự đơn giản. - Jacob Vlijm
@Caleb Khi bạn chạy nó từ dòng lệnh, nó có kiểm soát của giao diện điều khiển để bạn không thể chạy bất kỳ lệnh nào hơn, hoặc nó đi đến nền để các thiết bị đầu cuối vẫn còn có sẵn? - CameronNemo


Các câu trả lời:


Trong trường hợp của tôi, tôi đã có thể làm những gì tôi muốn bằng cách sử dụng crontab.

Tôi không nhất thiết phải chạy mã khi khởi động. Tôi chỉ muốn biết rằng nó sẽ chạy trong khi máy tính đang bật. Sử dụng crontab cho phép tôi chạy mã python cứ sau 15 phút bất cứ khi nào máy tính hoạt động tốt.


2
2017-07-24 17:51