Làm thế nào để gửi một quá trình đến nền và tiền cảnh?


16

Nếu tôi làm ping google.com &, quá trình đi vào nền và tiếp tục hiển thị cho tôi các chi tiết ping. Tôi vẫn có thể sử dụng thiết bị đầu cuối với các lệnh khác, nhưng đầu ra từ ping và đầu ra từ các lệnh khác bị lẫn lộn (đây không phải là vấn đề), nhưng tôi không thể chấm dứt quá trình ping này.

Vì vậy, tôi muốn đưa nó lên nền trước và sau đó nhấn ctrl + c hoặc một cái gì đó. Tôi đã thử sử dụng fg, nhưng nó cũng không hoạt động. Vậy làm cách nào để tôi ping google.com &quay trở lại nền trước sau khi tôi nhấn phím return ở cuối lệnh ping?


2
Có vẻ như vấn đề bạn thực sự muốn giải quyết là giết chết một công việc nền; không cần phải đưa nó vào nền trước. Sử dụng jobsđể tìm ID công việc jidcủa quá trình nền, và sau đó chỉ cần làm kill %jidđể giết nó.
vườn

Câu trả lời:


30

fglà lệnh chính xác để tạo tiền đề cho một công việc, nhưng nếu có nhiều hơn một công việc đang chạy, bạn nên chỉ định số công việc. Nếu bạn chỉ gõ fg, công việc nền cuối cùng (được coi là công việc hiện tại bằng vỏ) sẽ được đưa lên nền trước.

Nhận công việc hiện tại:

$ jobs
[1]+     ping google.com &

Mở đầu công việc bằng cách chỉ định số:

fg %1

Lệnh có thể bị phá vỡ bởi đầu ra từ quá trình đang chạy, nhưng nó vẫn hoạt động, bạn có thể bỏ qua sự gián đoạn.

Sau đó nhấn ctrl+ cđể làm gián đoạn và dừng quá trình

Như đã đề cập trong một bình luận, bạn cũng có thể gửi tín hiệu theo số công việc, ví dụ kill %1

Để đầy đủ, nếu bạn không sử dụng &tại thời điểm gọi quy trình, bạn có thể gửi nó xuống nền bằng cách đóng băng đầu tiên bằng ctrl+ zvà sau đó nhậpbg


1
Đơn giản là fgkhông có đối số dường như cũng hoạt động, ít nhất là khi chỉ có một công việc nền.
Cedric Reichenbach

1
@CedricReichenbach chỉnh sửa!
Zanna

-2

Để trả lời câu hỏi được hỏi, cụ thể là Làm thế nào để gửi đầu ra của một quá trình tới nền và tiền cảnh? , teelệnh sẽ làm:

Trong điện toán, tee là một lệnh trong trình thông dịch dòng lệnh (shell) sử dụng các luồng tiêu chuẩn đọc đầu vào tiêu chuẩn và ghi nó vào cả đầu ra tiêu chuẩn và một hoặc nhiều tệp, sao chép hiệu quả đầu vào của nó. https://en.wikipedia.org/wiki/Tee_(command)


5
Bạn đang hiểu nhầm điều gì đó ở đây ...
Chỉ huy Byte
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.