vấn đề nohup khi được đưa ra lệnh với các đối số


2

Đã thử:

while true; do date; sleep 1; done

Có:

Thu Aug 27 17:33:24 IDT 2009
Thu Aug 27 17:33:25 IDT 2009
Thu Aug 27 17:33:26 IDT 2009
...

Nhưng:

nohup while true; do date; sleep 1; done

Có tôi:

bash: syntax error near unexpected token `do'

Bất cứ ý tưởng tại sao?

Câu trả lời:


4

Nếu bạn THỰC SỰ muốn làm tất cả trên dòng lệnh mà không tạo tập lệnh, hãy làm điều này:

nohup bash -c "while true; do date; sleep 1; done"

2

nohup nhận lệnh, "while" không phải là lệnh, nó là shell dựng sẵn.


1

trong khi thực sự là một lệnh được tích hợp vào bash, không phải là một lệnh thực thi riêng biệt, vì vậy nohup không thể chạy nó. Nếu bạn muốn làm điều này, bạn sẽ cần đặt các lệnh của mình vào một tệp và sau đó sử dụng nohup để chạy tệp đó.

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.