Lệnh bg trong Linux giúp bạn đưa một tiến trình đang tạm dừng (suspended) xuống chạy ngầm (background) một cách dễ dàng. Sử dụng lệnh bg, bạn có thể tiếp tục làm việc với terminal trong khi tiến trình đó vẫn đang chạy. Điều này rất hữu ích khi bạn muốn thực hiện các tác vụ khác mà không cần chờ tiến trình hiện tại hoàn thành.
Lệnh bg trong linux là gì?
Lệnh bg trong Linux là một command bg in linux rất hữu ích, cho phép bạn đưa một tiến trình đang tạm dừng (stopped) trở lại chạy ở chế độ nền (background). Khi một tiến trình bị tạm dừng, ví dụ bằng tổ hợp phím Ctrl+Z, bạn có thể sử dụng bg để nó tiếp tục chạy mà không chiếm quyền điều khiển terminal của bạn. Điều này giúp bạn có thể tiếp tục làm việc khác trong terminal trong khi tiến trình đó vẫn đang chạy ngầm. Bạn có thể chỉ định số job cần đưa ra nền, hoặc nếu không, bg sẽ mặc định áp dụng cho job gần nhất bị tạm dừng. Sử dụng bg giúp quản lý các tiến trình hiệu quả hơn, đặc biệt khi bạn cần chạy nhiều tác vụ cùng lúc.
Tìm hiểu Mục đích và Cú pháp của Lệnh bg
Trong bước này, bạn sẽ tìm hiểu về mục đích và cú pháp của lệnh bg trong Linux.
Lệnh bg được dùng để chuyển một job bị tạm dừng (stopped) ra background.
Việc này cho phép bạn tiếp tục làm việc ở foreground mà không bị gián đoạn.
Để bắt đầu, hãy chạy một tiến trình ở foreground và tạm dừng nó bằng tổ hợp phím Ctrl+Z:
$ sleep 60
^Z
[1]+ Stopped sleep 60
Như bạn thấy, lệnh sleep 60 đã bị tạm dừng và hiện đang ở trạng thái background.
Để chuyển tiến trình bị tạm dừng này ra background, hãy sử dụng lệnh bg:
$ bg
[1]+ sleep 60 &
Lệnh bg sẽ tiếp tục tiến trình bị tạm dừng và chuyển nó ra background.
Bạn có thể tiếp tục làm việc ở foreground trong khi tiến trình chạy ngầm.
Bạn cũng có thể dùng lệnh bg với một job number để chuyển một tiến trình cụ thể ra background.
Ví dụ, nếu bạn có nhiều tiến trình bị tạm dừng, hãy dùng bg 2 để chuyển job thứ hai.
Ví dụ đầu ra:
[1]+ sleep 60 &
Cú pháp của lệnh bg như sau:
bg [job_id]
Trong đó job_id là job number tùy chọn của tiến trình bạn muốn chuyển ra background.
Nếu không chỉ định job number, lệnh bg sẽ chuyển tiến trình bị tạm dừng gần nhất.
Tạm Dừng Tiến Trình Chạy Trước và Chuyển Xuống Nền
Trong bước này, bạn sẽ học cách tạm dừng một tiến trình đang chạy trước và chuyển nó xuống nền bằng lệnh bg.
Đầu tiên, hãy bắt đầu một tiến trình chạy dài ở chế độ foreground (chạy trước):
$ sleep 120
Trong khi lệnh sleep 120 đang chạy, hãy nhấn tổ hợp phím Ctrl+Z để tạm dừng tiến trình.
^Z
[1]+ Stopped sleep 120
Bây giờ, tiến trình sleep 120 đã bị tạm dừng và nằm ở chế độ background (chạy nền). Để chuyển nó xuống nền, sử dụng lệnh bg:
$ bg
[1]+ sleep 120 &
Lệnh bg sẽ tiếp tục tiến trình đã tạm dừng và chuyển nó xuống nền, cho phép bạn tiếp tục làm việc ở chế độ foreground.
Ví dụ về đầu ra:
[1]+ sleep 120 &
Bạn cũng có thể liệt kê các tiến trình đang chạy nền bằng lệnh jobs:
$ jobs
[1]+ Running sleep 120 &
Điều này cho thấy rằng tiến trình sleep 120 hiện đang chạy ở chế độ background.
Liệt Kê và Quản Lý Các Tiến Trình Chạy Nền
Trong bước này, bạn sẽ học cách liệt kê và quản lý các tiến trình chạy nền bằng lệnh jobs và fg.
Đầu tiên, hãy cùng nhau khởi chạy một vài tiến trình chạy nền nhé:
$ sleep 60 &
[1] 12345
$ sleep 120 &
[2] 12346
$ sleep 180 &
[3] 12347
Để liệt kê các tiến trình chạy nền hiện tại, bạn hãy sử dụng lệnh jobs:
$ jobs
[1] Running sleep 60 &
[2] Running sleep 120 &
[3] Running sleep 180 &
Lệnh jobs hiển thị số thứ tự, trạng thái và lệnh của mỗi tiến trình chạy nền.
Bạn cũng có thể lấy thông tin chi tiết hơn về các tiến trình chạy nền bằng lệnh jobs -l:
$ jobs -l
[1] 12345 Running sleep 60 &
[2] 12346 Running sleep 120 &
[3] 12347 Running sleep 180 &
Lệnh này bao gồm cả ID tiến trình (PID) của mỗi tiến trình chạy nền.
Để đưa một tiến trình chạy nền lên foreground, hãy dùng lệnh fg kèm theo số thứ tự của tiến trình:
$ fg 2
sleep 120
Lệnh fg sẽ đưa tiến trình chạy nền được chỉ định lên foreground để bạn có thể tương tác.
Để dừng một tiến trình chạy nền, bạn có thể dùng lệnh kill với ID tiến trình (PID) lấy từ lệnh jobs -l:
$ kill 12346
[2]+ Terminated sleep 120
Lệnh này sẽ kết thúc tiến trình chạy nền có PID là 12346.
Kết luận cho linux bg command
Vậy là bạn đã nắm vững cách sử dụng lệnh bg 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 một cách hiệu quả hơn. Việc đưa một tiến trình đang tạm dừng xuống chạy ngầm giúp bạn tiếp tục làm việc khác mà không cần chờ đợi. Hãy nhớ rằng, bạn có thể kiểm tra trạng thái của các tiến trình ngầm bằng lệnh jobs. Thực hành thường xuyên sẽ giúp bạn làm quen và sử dụng thành thạo linux bg command. Đừng ngại thử nghiệm với các tùy chọn khác nhau để khám phá thêm nhiều điều thú vị. Chúc bạn thành công trên hành trình chinh phục Linux và làm chủ hệ thống của mình! Hãy tận dụng tối đa sức mạnh của dòng lệnh để tăng năng suất làm việc nhé.