Lệnh fg trong linux với các ví dụ dễ hiểu

Lệnh fg trong Linux giúp đưa một tiến trình đang chạy ngầm (background) trở lại chạy ở foreground, tức là tương tác trực tiếp với terminal. Bạn có thể sử dụng fg để tiếp tục công việc với một chương trình mà bạn đã tạm dừng hoặc chuyển xuống chạy ngầm trước đó. Điều này rất hữu ích khi bạn muốn tập trung vào một tác vụ cụ thể mà không cần mở một terminal mới.

Lệnh fg trong linux là gì?

Trong Linux, command fg (foreground) là một lệnh rất hữu ích để đưa một tiến trình đang chạy ngầm (background) trở lại chạy ở chế độ tương tác trực tiếp với người dùng. Lệnh command fg in linux cho phép bạn tiếp tục làm việc với tiến trình đó ngay trên terminal, nhập lệnh và xem kết quả trả về một cách trực quan. Khi một tiến trình chạy ngầm, nó vẫn hoạt động nhưng không chiếm quyền điều khiển terminal, bạn có thể sử dụng command fg in linux để đưa nó lên trước. Điều này đặc biệt hữu ích khi bạn muốn tạm dừng một tiến trình đang chạy ngầm để kiểm tra hoặc sửa đổi gì đó, sau đó tiếp tục chạy nó.

Tìm hiểu Mục đích của Lệnh fg

Trong bước này, bạn sẽ tìm hiểu về mục đích của lệnh fg trong Linux.

Lệnh fg được dùng để đưa một tiến trình chạy nền lên trước, giúp bạn tương tác trực tiếp.

Trong Linux, khi bạn chạy một lệnh, nó có thể chạy ở foreground hoặc background.

Tiến trình foreground là những tiến trình bạn có thể tương tác trực tiếp.

Tiến trình background chạy mà không cần sự tương tác của người dùng.

Để bắt đầu một tiến trình ở background, bạn có thể thêm ký tự & vào cuối lệnh.

sleep 60 &

Lệnh này sẽ bắt đầu lệnh sleep ở background và bạn sẽ nhận được PID.

Ví dụ về đầu ra:

[1] 12345

Để đưa tiến trình background này lên foreground, bạn có thể dùng lệnh fg.

fg

Lệnh này sẽ đưa tiến trình background gần nhất lên foreground để bạn tương tác.

Nếu bạn có nhiều tiến trình background, bạn có thể dùng fg với PID hoặc job number.

Job number là số trong dấu ngoặc vuông, để đưa một tiến trình cụ thể lên foreground.

Ví dụ:

fg 12345

hoặc

fg %1

Cả hai lệnh này sẽ đưa tiến trình background với PID 12345 hoặc job number 1 lên foreground.

Đưa một tiến trình chạy ngầm lên trên nền trước

Trong bước này, bạn sẽ học cách đưa một tiến trình chạy ngầm lên nền trước bằng lệnh fg.

Đầu tiên, hãy bắt đầu một tiến trình chạy ngầm để chúng ta thực hành nhé:

sleep 60 &

Lệnh này sẽ khởi chạy lệnh sleep ở chế độ nền, và bạn sẽ nhận được Process ID (PID) của tiến trình đó.

Ví dụ về kết quả trả về:

[1] 12345

Bây giờ, để đưa tiến trình chạy ngầm này lên nền trước, bạn có thể sử dụng lệnh fg đơn giản như sau:

fg

Lệnh này sẽ đưa tiến trình chạy ngầm gần nhất lên nền trước, cho phép bạn tương tác trực tiếp với nó.

Nếu bạn có nhiều tiến trình chạy ngầm, bạn có thể dùng fg kèm PID hoặc Job Number để chọn tiến trình cụ thể.

Ví dụ:

fg 12345

Hoặc:

fg %1

Cả hai lệnh này đều đưa tiến trình chạy ngầm với PID 12345 hoặc Job Number 1 lên nền trước.

Khi tiến trình đã ở trên nền trước, bạn có thể tương tác trực tiếp với nó một cách dễ dàng.

Ví dụ, nếu bạn đã chạy lệnh sleep ở chế độ nền, bạn có thể ngắt nó bằng cách nhấn tổ hợp phím Ctrl+C.

Quản lý nhiều tiến trình nền với fg

Trong bước này, bạn sẽ học cách quản lý nhiều tiến trình nền bằng lệnh fg.

Chúng ta hãy bắt đầu bằng việc tạo một vài tiến trình chạy ngầm nhé:

sleep 60 &
sleep 120 &
sleep 180 &

Lệnh này sẽ khởi chạy ba lệnh sleep ở chế độ nền cho bạn.

Bạn có thể thấy số thứ tự công việc và ID tiến trình (PID) của các tiến trình nền:

Ví dụ về kết quả:

[1] 12345
[2] 12346
[3] 12347

Để đưa một tiến trình nền cụ thể lên foreground, dùng lệnh fg kèm số thứ tự hoặc PID.

fg %2

Lệnh này sẽ đưa tiến trình nền số 2 (lệnh sleep 120) lên foreground.

Nếu muốn chuyển đổi giữa nhiều tiến trình nền, bạn có thể dùng lệnh fg nhiều lần.

fg %1
## Interrupt the first process by pressing Ctrl+C
fg %3
## Interrupt the third process by pressing Ctrl+C

Điều này cho phép bạn chuyển đổi giữa các tiến trình nền khác nhau và tương tác trực tiếp.

Bạn cũng có thể dùng PID thay vì số thứ tự để đưa một tiến trình cụ thể lên foreground.

fg 12347

Lệnh này sẽ đưa tiến trình nền có PID 12347 (lệnh sleep 180) lên foreground.

Bằng cách học cách quản lý nhiều tiến trình nền với lệnh fg, bạn có thể tối ưu quy trình làm việc.

Bạn cũng có thể chuyển đổi hiệu quả giữa các tác vụ khác nhau đang chạy ở chế độ nền.

Kết luận cho linux fg command

Vậy là bạn đã nắm vững cách sử dụng lệnh fg trong Linux rồi đấy! Hy vọng hướng dẫn này giúp bạn quản lý các tiến trình chạy nền một cách dễ dàng hơn. Hãy nhớ rằng, linux fg command là một công cụ mạnh mẽ để đưa các tiến trình trở lại màn hình chính. Việc này giúp bạn tương tác trực tiếp với chúng mà không cần phải khởi động lại. Thực hành thường xuyên sẽ giúp bạn làm quen và sử dụng lệnh này một cách thành thạo. Đừng ngại thử nghiệm với các tiến trình khác nhau để hiểu rõ hơn cách chúng hoạt động. Chúc bạn thành công trên hành trình khám phá Linux và làm chủ dòng lệnh!

Last Updated : 16/10/2025