Cách sử dụng quy trình nohup / gửi đến nền trên os / x


3

Lệnh

nohup <command> &

Dường như không hoạt động đúng trên mac: quá trình bị đình chỉ. Phát hành

fg

dường như được yêu cầu để kích hoạt lại lệnh.

Đây là một minh họa:

$nohup jekyll serve --watch &
[1] 47426
$appending output to nohup.out


[1]+  Stopped                 nohup jekyll serve --watch

Bây giờ, trên Linux, quá trình sẽ không bị "dừng lại" bằng cách ban hành lệnh đó ..

Trong trường hợp trên: nếu chúng tôi phát hành

fg

Sau đó, máy chủ jekyll tiến hành khởi chạy đúng cách: chúng ta có thể truy cập nó trên cổng 4000. Nhưng tôi không muốn chiếm một phiên cuối cùng với quy trình đó: đáng lẽ nó phải là nền tảng.

Vậy .. cách nào để đạt được điều này trên mac?


nohup chắc chắn được hỗ trợ tốt trên OS X. Bạn có thể gặp vấn đề với lệnh của mình. Ví dụ, rvm + nohup không phải là một ý tưởng tuyệt vời, nhưng đó là rvm Lỗi, không phải lỗi của OS X. Có gì trong đấy nohup.out? Và bạn đang sử dụng cái vỏ nào?
Ian C.

3
Chắc chắn là có một cái gì đó khác nhau đang diễn ra với osx
Reno

Tôi đang thấy hành vi chính xác này trên MacOS Sierra (10.12.5), nơi nó đặt quá trình sinh ra nền tảng ở trạng thái Dừng như @javadba đã mô tả, trong khi điều tương tự chính xác trên Linux không đặt nó ở trạng thái Ngừng .. nó vẫn ở chạy trong nền.
Yavin5

Tôi nhận được hành vi tôi mong đợi với nohup sleep 3600 & Vì vậy, tôi tưởng tượng vấn đề là Jekyll làm một cái gì đó để chỉ ra rằng nó muốn tiền cảnh. Bạn có thể theo dõi nó để xem những gì nó làm?
tripleee
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.