Terminal là là giao diện dòng lệnh giúp bạn giao tiếp trực tiếp với máy tính và hệ điều hành thông qua các đoạn văn bản thay vì dùng chuột. Nếu bạn mới bắt đầu học lập trình, màn hình đen chứa các dòng lệnh này có thể trông rất khó hiểu. Đừng lo lắng, […]
Terminal là gì: Là giao diện dòng lệnh giúp bạn tương tác trực tiếp với hệ điều hành bằng cách gõ các câu lệnh văn bản thay vì dùng chuột trên giao diện đồ họa.
Phân biệt với CLI, Shell, Command Prompt, PowerShell: Terminal là ứng dụng hiển thị cửa sổ dòng lệnh; CLI là mô hình giao diện; Shell là bộ não xử lý lệnh; Command Prompt và PowerShell là các shell riêng của Windows.
Công dụng chính: Quản lý tệp/thư mục, cài đặt/gỡ phần mềm, chạy và kiểm thử mã nguồn, quản trị máy chủ từ xa, tự động hóa tác vụ bằng script.
Cách thức hoạt động: Gồm 3 giai đoạn là tiếp nhận đầu vào từ người dùng, shell phân tích và thực thi lệnh, rồi trả kết quả về Terminal để hiển thị.
Lợi ích khi dùng: Giúp điều khiển máy tính nhanh chóng, tự động hóa các tác vụ phức tạp và can thiệp sâu vào hệ thống mà giao diện đồ họa không làm được.
Nhược điểm cần lưu ý: Đường cong học tập cao, rủi ro thao tác nhầm có thể gây mất dữ liệu, cú pháp khác nhau giữa các hệ điều hành và cần ghi nhớ nhiều tham số.
Đối tượng nên dùng: Lập trình viên, quản trị hệ thống, sinh viên CNTT, designer/content creator và người dùng muốn tối ưu máy tính.
Terminal là là giao diện dòng lệnh giúp bạn giao tiếp trực tiếp với máy tính và hệ điều hành thông qua các đoạn văn bản thay vì dùng chuột. Nếu bạn mới bắt đầu học lập trình, màn hình đen chứa các dòng lệnh này có thể trông rất khó hiểu. Đừng lo lắng, bài viết dưới đây sẽ giải thích chi tiết Terminal là gì và hướng dẫn cách sử dụng cơ bản cho người mới.
Terminal trong máy tính là giao diện dòng lệnh cho phép bạn nhập các câu lệnh văn bản để tương tác trực tiếp với hệ điều hành.
Thay vì thao tác bằng chuột trên giao diện đồ họa, bạn chỉ cần nhập lệnh trực tiếp để yêu cầu hệ thống thực hiện các tác vụ như quản lý tệp, mở chương trình, thiết lập cấu hình hoặc kết nối mạng.
Terminal không trực tiếp thực thi câu lệnh mà đóng vai trò trung gian giữa người dùng và shell như Bash, Zsh hoặc PowerShell. Terminal tiếp nhận lệnh, chuyển đến shell để xử lý, sau đó hiển thị kết quả trả về.
Terminal bắt đầu từ những năm 1950 và 1960 dưới dạng các máy đánh chữ điện tử (teletype) và màn hình thô sơ kết nối với các hệ thống máy tính lớn để nhập dữ liệu. Khi máy tính cá nhân xuất hiện vào thập niên 1970 và 1980, các hệ điều hành dòng lệnh như MS-DOS ra đời và trở thành chuẩn mực trước khi giao diện đồ họa (chuột và cửa sổ) phổ biến.
Giao diện đồ họa (GUI) với chuột và biểu tượng xuất hiện sau đó đã thay thế dòng lệnh đối với người dùng phổ thông. Tuy nhiên, Terminal dạng phần mềm giả lập (terminal emulator) vẫn được giữ lại và không ngừng phát triển trên các hệ điều hành hiện đại như Linux, macOS hay Windows để phục vụ cho các lập trình viên và chuyên gia công nghệ.

Terminal, CLI, Shell, Command Prompt và PowerShell là các khái niệm dễ gây nhầm lẫn vì thường xuất hiện cùng nhau khi bạn mở một màn hình dòng lệnh trên máy tính.
Dưới đây là bảng phân biệt ngắn gọn giữa Terminal, CLI, Shell, Command Prompt và PowerShell:
|
Khái niệm |
Bản chất |
Vai trò chính |
Hệ điều hành phổ biến |
|
CLI (Command Line Interface) |
Khái niệm/Mô hình |
Giao diện dòng lệnh nói chung, nơi người dùng gõ văn bản thay vì dùng chuột. |
Mọi hệ điều hành |
|
Terminal (Terminal Emulator) |
Ứng dụng/Phần mềm |
Cửa sổ hiển thị bên ngoài, nhận ký tự bạn gõ và hiển thị kết quả từ Shell. |
Mọi hệ điều hành (Terminal, iTerm2,…) |
|
Shell |
Chương trình/Lệnh |
Bộ não bên trong nhận lệnh từ bạn, dịch hiểu nó và ra lệnh cho hệ điều hành. |
Bash, Zsh, Sh (Linux/macOS) |
|
Command Prompt (cmd) |
Một chương trình Shell cũ. |
Trình thông dịch dòng lệnh truyền thống, đơn giản của Windows. |
Windows |
|
PowerShell |
Một chương trình Shell nâng cao. |
Trình thông dịch hiện đại, mạnh mẽ hơn của Windows, hỗ trợ tự động hóa và lập trình kịch bản. |
Windows, macOS, Linux |
Terminal hỗ trợ nhiều tác vụ trên máy tính, từ quản lý dữ liệu và phần mềm đến lập trình, quản trị hệ thống và tự động hóa. Một số ứng dụng phổ biến gồm:
Terminal hoạt động theo cơ chế tách biệt giữa giao diện và lớp xử lý, trong đó shell đóng vai trò trung gian giữa người dùng và hệ điều hành. Bản thân Terminal không diễn giải hay thực thi câu lệnh mà do shell đảm nhiệm.
Quy trình xử lý một lệnh thường gồm 3 giai đoạn sau:
Nhờ cơ chế tách lớp, bạn có thể thay đổi shell như Bash, Zsh hoặc PowerShell mà không cần thay đổi Terminal. Đây cũng là nền tảng giúp Terminal có tính linh hoạt và khả năng tùy biến cao, đặc biệt trong lập trình và quản trị hệ thống.

Terminal được hỗ trợ trên hầu hết các hệ điều hành hiện đại như Unix – Linux và BSD, macOS, Windows cùng một số hệ điều hành khác
macOS được xây dựng trên nền tảng Unix (BSD), có tích hợp sẵn ứng dụng Terminal. Bạn có thể sử dụng các shell như Bash hoặc Zsh để quản lý tệp, tự động hóa tác vụ và phát triển phần mềm. Terminal cũng cho phép truy cập và tương tác sâu hơn với hệ thống thông qua các lệnh Unix cơ bản.
Windows cũng hỗ trợ môi trường dòng lệnh, nhưng cách triển khai có nhiều khác biệt so với các hệ điều hành Unix và Linux.
Bên cạnh Unix – Linux, macOS, Windows, Terminal còn được hỗ trợ trên một số nền tảng khác như Chrome OS và các hệ điều hành di động:
Sử dụng Terminal giúp bạn tiết kiệm thời gian, tự động hóa tác vụ và điều khiển hệ điều hành nhanh chóng thông qua các dòng lệnh văn bản:

Bên cạnh khả năng thao tác nhanh và linh hoạt, Terminal cũng có một số hạn chế, đặc biệt với người mới hoặc khi thực hiện các tác vụ yêu cầu độ chính xác cao:

Terminal (giao diện dòng lệnh/CLI) và GUI (giao diện đồ họa người dùng) là hai cách khác nhau để bạn giao tiếp và điều khiển máy tính
|
Đặc điểm |
Terminal (CLI) |
GUI |
|
Cách tương tác |
Nhập văn bản, câu lệnh |
Bấm chuột, chạm màn hình, kéo thả |
|
Tốc độ thực thi |
Rất nhanh khi xử lý tác vụ phức tạp |
Chậm hơn do qua nhiều bước nhấp chuột |
|
Tài nguyên phần cứng |
Tốn cực kỳ ít RAM và CPU |
Tốn nhiều tài nguyên để duy trì đồ họa |
|
Độ khó (Đường cong học tập) |
Cao, cần nhớ chính xác cú pháp lệnh |
Thấp, dễ tiếp cận ngay cả với người mới |
|
Khả năng tự động hóa |
Xuất sắc (viết script chạy hàng loạt) |
Rất hạn chế, khó tự động hóa |
|
Xử lý đa tác vụ |
Quản lý nhiều tiến trình ngầm mạnh mẽ |
Trực quan, dễ chuyển đổi giữa các cửa sổ |
|
Truy cập hệ thống sâu |
Toàn diện, can thiệp sâu vào nhân hệ điều hành, file cấu hình ẩn |
Hạn chế, hỉ chỉnh sửa được các thiết lập mở sẵn |
|
Quản lý từ xa (SSH) |
Tối ưu, kết nối SSH siêu nhẹ, mượt cả khi mạng yếu |
Cần cài giao diện, tốn băng thông (RDP, TeamViewer) |
Terminal không thể thay thế hoàn toàn cho GUI mà bổ sung cho nhau. Bạn có thể dùng GUI cho công việc hàng ngày và dùng Terminal khi yêu cầu tốc độ cao:
Terminal phù hợp với nhiều nhóm đối tượng, từ những người làm việc chuyên sâu với máy tính đến người muốn chủ động hơn trong quản lý và tối ưu hệ thống. Cụ thể như sau:
Dưới đây là hướng dẫn chi tiết cách mở Terminal trên Windows, macOS và Linux nhanh chóng mà bạn có thể tham khảo.
Trên hệ điều hành Windows, bạn có thể mở Terminal bằng 3 cách sau:



Lưu ý: Windows 11 tích hợp sẵn Windows Terminal, cho phép mở nhiều tab cùng lúc, giúp thao tác với các môi trường dòng lệnh thuận tiện và hiệu quả hơn.
macOS tích hợp sẵn ứng dụng Terminal, vì vậy có thể mở trực tiếp mà không cần cài thêm phần mềm. Dưới đây là 3 cách thực hiện phổ biến:
Cách 1: Mở bằng Spotlight
Bước 1: Nhấn Command + Space để mở Spotlight.
Bước 2: Nhập Terminal vào ô tìm kiếm.

Bước 3: Nhấn Enter để khởi chạy ứng dụng.
Cách 2: Mở từ Finder


Bước 3: Nhấp đúp vào Terminal để mở ứng dụng.

Cách 3: Mở bằng Launchpad

Bước 2: Chọn thư mục Other.

Bước 3: Nhấn đúp vào Terminal để khởi chạy.

Tùy vào bản phân phối và môi trường desktop đang sử dụng, bạn có thể mở Terminal bằng một trong các cách sau:
Để điều khiển máy tính nhanh bằng văn bản qua Terminal, bạn cần biết một số nhóm lệnh cơ bản như lệnh quản lý tệp và thư mục, lệnh hệ thống, lệnh mạng, lệnh lập trình và quản lý mã nguồn.
Đây là nhóm lệnh được sử dụng để thao tác trực tiếp với tệp và thư mục, chẳng hạn truy cập, xem nội dung, tạo mới hoặc xóa dữ liệu.
|
Lệnh |
Chức năng |
|
cd [đường dẫn] |
Chuyển vị trí làm việc hiện tại sang thư mục được chỉ định. |
|
ls |
Liệt kê các tệp và thư mục con nằm trong thư mục hiện tại. |
|
mkdir [tên thư mục] |
Tạo một thư mục mới theo tên đã đặt. |
|
rm [đường dẫn] |
Xóa tệp được chỉ định theo đường dẫn. |
|
rmdir [tên thư mục] |
Xóa thư mục trống, tức thư mục không chứa tệp hoặc thư mục con. |
|
rm -r [tên thư mục] |
Xóa thư mục cùng tất cả tệp và thư mục con bên trong. |
|
rm -rf [tên thư mục] |
Ép xóa thư mục và toàn bộ nội dung bên trong mà không yêu cầu xác nhận. Cần kiểm tra kỹ lệnh trước khi thực thi vì dữ liệu có thể bị xóa vĩnh viễn. |
Các lệnh này chủ yếu dùng để kiểm tra hoạt động của hệ thống và thực hiện một số thao tác quản trị cơ bản.
|
Lệnh |
Chức năng |
|
top hoặc htop |
Hiển thị các tiến trình đang hoạt động cùng thông tin về mức sử dụng tài nguyên hệ thống. |
|
kill [PID] |
Gửi tín hiệu đến tiến trình dựa trên mã PID để dừng hoặc yêu cầu tiến trình kết thúc. |
|
sudo [lệnh] |
Chạy một câu lệnh với quyền quản trị viên, thường được sử dụng cho các thao tác cần quyền truy cập cao hơn. |
Những lệnh này hỗ trợ kiểm tra trạng thái kết nối, xem thông tin cấu hình mạng và trao đổi dữ liệu với các máy chủ hoặc website.
|
Lệnh |
Chức năng |
|
ping [địa chỉ] |
Gửi các gói tin đến địa chỉ được chỉ định để kiểm tra khả năng kết nối và phản hồi của thiết bị trên mạng. |
|
ifconfig hoặc ip |
Xem thông tin về giao diện mạng, địa chỉ IP và các thiết lập mạng; trong đó ip là công cụ phổ biến trên Linux hiện đại. |
|
curl [URL] |
Gửi yêu cầu đến URL và nhận dữ liệu từ máy chủ, thường được dùng để kiểm tra API hoặc tải nội dung qua mạng. |
|
wget [URL] |
Tải tệp hoặc nội dung từ một URL về máy thông qua dòng lệnh. |
Nhóm lệnh này hỗ trợ các tác vụ phổ biến trong quá trình phát triển phần mềm, từ quản lý mã nguồn đến cài đặt thư viện và chạy chương trình.
|
Lệnh |
Chức năng |
|
git [lệnh con] |
Quản lý mã nguồn, theo dõi và lưu lại lịch sử thay đổi của dự án. |
|
npm, pip hoặc composer |
Cài đặt, cập nhật và quản lý các package theo từng ngôn ngữ lập trình. |
|
node, python hoặc java |
Thực thi chương trình tương ứng trực tiếp thông qua Terminal. |
Sau khi hiểu rõ Terminal là gì và biết cách mở trên các hệ điều hành khác nhau, bạn có thể thực hiện các lệnh để hiển thị nội dung trong thư mục, xóa file, xóa thư mục trong Terminal.
Bạn có thể hiển thị nội dung trong thư mục trong Terminal bằng các bước sau:
cd [đường dẫn] để chuyển đến thư mục cần kiểm tra.ls trên macOS/Linux hoặc dir trên Command Prompt của Windows, sau đó nhấn Enter để hiển thị danh sách tệp và thư mục.ls -l nếu muốn xem chi tiết hơn như quyền truy cập, dung lượng và thời gian chỉnh sửa của từng tệp.Terminal hỗ trợ xóa tệp và thư mục trực tiếp bằng câu lệnh. Trước khi thực hiện, hãy kiểm tra kỹ đường dẫn và tên tệp/thư mục để hạn chế nguy cơ xóa nhầm dữ liệu.
cd [đường dẫn] để truy cập thư mục chứa tệp hoặc thư mục cần xóa.rm [tên_file] trên macOS/Linux hoặc del [tên_file] trên Command Prompt của Windows.rm -r [tên_thư_mục] trên macOS/Linux.Trong lập trình, Terminal giúp lập trình viên giao tiếp với hệ điều hành, quản lý mã nguồn, chạy chương trình và tự động hóa tác vụ nhanh chóng mà không cần dùng giao diện đồ họa.
Terminal kết hợp với Git để quản lý mã nguồn và theo dõi các thay đổi trong dự án. Lập trình viên có thể thực hiện các thao tác như commit, push, pull, merge hoặc tạo và chuyển đổi giữa các branch trực tiếp bằng câu lệnh. Nhờ đó, nhiều thành viên có thể phát triển các phần khác nhau của cùng một dự án mà vẫn dễ dàng đồng bộ và kiểm soát thay đổi.
Terminal cho phép chạy trực tiếp chương trình được viết bằng nhiều ngôn ngữ như C/C++, Java, Python và JavaScript, đồng thời hỗ trợ quản lý tệp và theo dõi log của dự án. Thông báo lỗi được hiển thị ngay trên dòng lệnh giúp xác định nguyên nhân sự cố nhanh hơn. Terminal cũng thường được sử dụng để chạy các bài kiểm thử tự động trước khi đưa thay đổi vào mã nguồn chính.
Terminal hỗ trợ cài đặt, cập nhật và gỡ bỏ thư viện thông qua các trình quản lý gói phù hợp với từng ngôn ngữ lập trình. Cách này giúp giảm thao tác thủ công, đồng thời dễ kiểm soát các dependency và hạn chế xung đột phiên bản khi dự án phát triển.
Trong quá trình triển khai, Terminal cho phép kết nối an toàn đến máy chủ từ xa để cấu hình, cập nhật ứng dụng và kiểm tra hoạt động của hệ thống mà không cần truy cập trực tiếp vào máy chủ. Các công cụ như Docker, Kubernetes, Ansible và Terraform cũng chủ yếu được điều khiển qua dòng lệnh, kết hợp với shell script để tự động hóa quy trình CI/CD và hỗ trợ phát hành phần mềm hiệu quả hơn.

Terminal cho phép thực hiện nhiều thao tác trực tiếp trên hệ thống, vì vậy cần thận trọng khi nhập và chạy câu lệnh. Một số lưu ý quan trọng gồm: