chuyển hướng đầu ra trong crontab


0

Tôi có một kịch bản shell để theo dõi số liệu thống kê bảng và ứng dụng java. Nó hoạt động tốt khi tôi chạy thủ công. Nhưng nếu tôi đặt nó vào crontab thì nó sẽ bị kẹt nếu tôi không chuyển hướng đầu ra của nó với export display chỉ huy. Bất cứ ý tưởng tại sao?


Ý bạn là export DISPLAY? Nghe có vẻ như là một ứng dụng X Windows, vì vậy nó cần biết máy chủ X để đặt cửa sổ. DISPLAY thường được đặt khi bạn đăng nhập vào GUI và cron không có trong phiên GUI.
Barmar

Nó sẽ giúp nếu bạn đăng lệnh đầy đủ.
Barmar

đây là công việc định kỳ */2 * * * * export DISPLAY=:1.0 && gnome-terminal -x /path/script.sh
ivcode

Làm thế nào để bạn mong đợi gnome-terminal, với toàn bộ mục đích là mở một cửa sổ giả lập thiết bị đầu cuối trên màn hình, để hoạt động mà không cần thiết lập HIỂN THỊ?
Barmar

tôi cũng đã mở màn hình '1' và cronjob dường như hoạt động. Nhưng vấn đề là, nếu tôi thêm một cronjob cho cùng một tập lệnh mà không hướng nó đến một màn hình (ví dụ: * / 2 * * * * /path/script.sh), tập lệnh sẽ bị kẹt ở giữa quá trình thực thi
ivcode

Câu trả lời:


0

Lệnh nên là:

DISPLAY=:1.0 gnome-terminal -x /path/script.sh

Vì gnome-terminal là một ứng dụng X, nên nó sử dụng DISPLAY biến môi trường để kết nối với máy chủ X và hiển thị các cửa sổ của nó. Để đặt biến môi trường chỉ trong khoảng thời gian của một lệnh, đặt phép gán biến ở đầu dòng lệnh.

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.