Back to Explore
Làm chủ Terminal, Shell và Hệ thống tệp: Hướng dẫn từ A-Z cho lập trình viên

Làm chủ Terminal, Shell và Hệ thống tệp: Hướng dẫn từ A-Z cho lập trình viên

Khám phá sự khác biệt giữa Terminal và Shell, hiểu sâu về kiến trúc hệ thống tệp, cách hoạt động của biến môi trường $PATH và các lệnh CLI thiết yếu để tối ưu hóa quy trình làm việc của lập trình viên.

Website
Upvote this postSign in to upvote this article.

Bài viết được dịch và tổng hợp từ tin tức gốc. Bạn có thể đọc bài viết gốc bằng tiếng Anh tại đây.

Điểm tin nhanh:

  • Phân biệt rõ ràng giữa Terminal (giao diện hiển thị) và Shell (công cụ xử lý logic).
  • So sánh sự khác biệt giữa CMD (cũ) và PowerShell (hiện đại, hướng đối tượng).
  • Hiểu cách hệ điều hành tìm kiếm lệnh thông qua biến môi trường $PATH và cấu trúc tệp tin.

Thumbnail

1. Terminal vs. Shell: Kiến trúc Windows

Để làm việc hiệu quả, bạn cần hiểu rõ ranh giới giữa hai thành phần này:

  • Terminal (Trình giả lập): Là ứng dụng giao diện đồ họa (GUI) đóng vai trò là "cửa sổ" hiển thị. Nó chịu trách nhiệm bắt các phím bấm, xử lý render văn bản qua GPU và quản lý các tab/pane. Ví dụ: Windows Terminal, iTerm2, Alacritty.
  • Shell (Trình thông dịch): Là công cụ chạy bên trong Terminal. Nó phân tích các chuỗi văn bản, thực thi các lệnh hệ thống (syscalls) và tương tác trực tiếp với Kernel. Ví dụ: PowerShell, Bash, Zsh, CMD.

2. So sánh CMD và PowerShell

Việc lựa chọn công cụ phù hợp giúp tăng tốc độ làm việc đáng kể. Dưới đây là bảng so sánh chi tiết:

Đặc điểm Command Prompt (CMD) PowerShell (pwsh.exe)
Thời đại Legacy (MS-DOS 1980s) Hiện đại (Cross-platform)
Cơ chế dữ liệu Plain Text (Văn bản thuần) Objects (Đối tượng)
Khả năng xử lý Cần lọc chuỗi thủ công Truy vấn thuộc tính trực tiếp
Khuyên dùng Không khuyến khích Rất khuyến khích cho Dev

3. Hệ thống tệp và các lớp ẩn

  • Đường dẫn tuyệt đối (Absolute Path): Địa chỉ đầy đủ từ gốc hệ thống (ví dụ: C:\var\www\rextora\src\server.js).
  • Đường dẫn tương đối (Relative Path): Địa chỉ dựa trên vị trí hiện tại của bạn (ví dụ: ../config/.env).
  • Tệp ẩn (Dotfiles): Các tệp bắt đầu bằng dấu chấm (như .env, .gitignore) thường bị ẩn để bảo vệ cấu hình hệ thống.

4. Các lệnh CLI cơ bản (Cheat Sheet)

Lệnh Chức năng
pwd In ra đường dẫn thư mục hiện tại
ls / dir Liệt kê nội dung thư mục
cd Thay đổi thư mục làm việc
mkdir Tạo thư mục mới
touch Tạo tệp tin trống
cat Xem nội dung tệp tin
rm Xóa tệp hoặc thư mục (cẩn thận với rm -rf)

5. Biến môi trường và biến $PATH

Biến môi trường là các cặp khóa-giá trị lưu trong RAM, giúp ứng dụng lấy cấu hình mà không cần hard-code vào mã nguồn.

Biến $PATH là gì?
Đây là một danh sách các thư mục chứa các tệp thực thi (binaries). Khi bạn gõ một lệnh (ví dụ: node), Shell sẽ quét tuần tự các thư mục trong biến $PATH để tìm tệp node.exe.

Quy trình tìm kiếm lệnh:

  1. Người dùng nhập lệnh.
  2. Shell phân tích cú pháp.
  3. Shell quét các thư mục trong $PATH.
  4. Nếu tìm thấy, Shell chuyển tệp thực thi cho Kernel để chạy.
  5. Nếu không tìm thấy, hệ thống báo lỗi "command not found".

Kết luận

  • Terminal là khung hình, Shell là bộ não xử lý.
  • Hãy ưu tiên sử dụng PowerShell hoặc Bash thay vì CMD.
  • Luôn kiểm tra biến $PATH nếu bạn gặp lỗi "command not recognized".

Discussion (0)

You need to log in to post comments. Log In

No comments yet. Start the discussion!

Do you like this post?

Upvote to push this post higher on the community feed

Details

Posted by: @admin
Categories: Developer Tools
Date posted: 8 tháng 7, 2026