Lệnh cmd trong Windows

Lệnh cmd bắt đầu một phiên bản mới của trình thông dịch lệnh, Cmd.exe. Nếu được sử dụng không có tham số, lệnh cmd sẽ hiển thị thông tin bản quyền và phiên bản của hệ điều hành.

Cú pháp lệnh cmd

cmd [/c|/k] [/s] [/q] [/d] [/a|/u] [/t:{<B><F>|<F>}] [/e:{on|off}] [/f:{on|off}] [/v:{on|off}] [<String>]

Tham số

Tham số Mô tả
/c Thực hiện lệnh được chỉ định bởi String và sau đó dừng lại.
/k Thực hiện lệnh được chỉ định bởi String và tiếp tục.
/s Sửa đổi cách xử lý của String sau tham số /c hoặc /k.
/q Tắt lệnh echo
/d Vô hiệu hóa việc thực thi các lệnh AutoRun.
/a Định dạng đầu ra lệnh nội bộ thành một tập hợp hoặc một file theo tiêu chuẩn American National Standards Institute (ANSI).
/u Định dạng đầu ra lệnh nội bộ thành một tập hợp hoặc một file dưới dạng Unicode.
/t:{<B><F>|<F>} Đặt màu cho background (B) và foreground (F).
/e:on Kích hoạt các phần mở rộng lệnh.
/e:off Vô hiệu hóa các phần mở rộng lệnh.
/f:on Kích hoạt tính năng hoàn thành tên file và thư mục.
/f:off Vô hiệu hóa tính năng hoàn thành tên file và thư mục.
/v:on Kích hoạt tính năng mở rộng biến môi trường bị trì hoãn.
/v:off Vô hiệu hóa tính năng mở rộng biến môi trường bị trì hoãn.
<String> Chỉ định lệnh bạn muốn thực hiện.
/? Hiển thị trợ giúp tại dấu nhắc lệnh.

Bảng sau đây liệt kê các chữ số thập lục phân hợp lệ mà bạn có thể sử dụng làm giá trị cho <B> và <F>

Giá trị Màu sắc
0 Đen
1 Xanh dương
2 Xanh lục
3 Xanh bạc hà
4 Đỏ
5 Tím
6 Vàng
7 Trắng
8 Xám
9 Xanh dương nhạt
a Xanh lục nhạt
b Xanh bạc hà nhạt
c Đỏ nhạt
d Tím nhạt
e Vàng nhạt
f Trắng sáng

Lưu ý

  • Sử dụng nhiều lệnh

Để sử dụng nhiều lệnh cho <String>, hãy tách chúng bằng dấu && và kèm theo dấu ngoặc kép. Ví dụ:

"<Command>&&<Command>&&<Command>"
  • Xử lý dấu ngoặc kép

Nếu bạn chỉ định /c hoặc /k, lệnh cmd xử lý phần còn lại của String và dấu ngoặc kép chỉ được bảo toàn nếu tất cả các điều kiện sau được đáp ứng:

  • Bạn không sử dụng /s.
  • Bạn sử dụng chính xác một bộ dấu ngoặc kép.
  • Bạn không sử dụng bất kỳ ký tự đặc biệt nào trong dấu ngoặc kép (ví dụ: & <> () @ ^ |).
  • Bạn sử dụng một hoặc nhiều ký tự khoảng trắng trong dấu ngoặc kép.
  • String trong dấu ngoặc kép là tên của file thực thi.

Nếu các điều kiện trước không được đáp ứng, String được xử lý bằng cách kiểm tra ký tự đầu tiên để xác minh xem đó có phải là dấu ngoặc kép mở hay không. Nếu ký tự đầu tiên là dấu ngoặc kép mở, nó sẽ bị loại bỏ cùng với dấu ngoặc kép đóng. Bất kỳ văn bản nào sau dấu ngoặc kép đóng đều được giữ nguyên.

  • Thực thi các registry subkey

Nếu bạn không chỉ định /d trong String, Cmd.exe sẽ tìm kiếm các registry subkey sau:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun\REG_SZ
 
 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun\REG_EXPAND_SZ

Nếu một hoặc cả hai registry subkey này xuất hiện, chúng sẽ được thực thi trước tất cả các biến khác.

Thận trọng:

Việc chỉnh sửa registry không chính xác có thể làm hỏng hệ thống của bạn. Trước khi thực hiện thay đổi đối với registry, bạn nên sao lưu mọi dữ liệu quan trọng trên máy tính.

  • Kích hoạt và vô hiệu hóa phần mở rộng lệnh
Command extensions are enabled by default in Windows XP. You can disable them for a particular process by using **/e:off**. You can enable or disable extensions for all **cmd** command-line options on a computer or user session by setting the following **REG_DWORD** values:
 
 **HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\EnableExtensions\REG_DWORD**
 
 **HKEY_CURRENT_USER\Software\Microsoft\Command Processor\EnableExtensions\REG_DWORD**
 
 Set the **REG_DWORD** value to either **0×1** (enabled) or **0×0** (disabled) in the registry by using Regedit.exe. User-specified settings take precedence over computer settings, and command-line options take precedence over registry settings.
[!CAUTION]
 Incorrectly editing the registry may severely damage your system. Before making changes to the registry, you should back up any valued data on the computer.
When you enable command extensions, the following commands are affected:  
 -   **assoc**
 -   **call**
 -   **chdir (cd)**
 -   **color**
 -   **del (erase)**
 -   **endlocal**
 -   **for**
 -   **ftype**
 -   **goto**
 -   **if**
 -   **mkdir (md)**
 -   **popd**
 -   **prompt**
 -   **pushd**
 -   **set**
 -   **setlocal**
 -   **shift**
 -   **start** (also includes changes to external command processes)
  • Kích hoạt tính năng mở rộng biến môi trường bị trì hoãn

Nếu bạn kích hoạt tính năng mở rộng biến môi trường bị trì hoãn, bạn có thể sử dụng ký tự dấu chấm than để thay thế giá trị của biến môi trường tại thời gian chạy.

  • Kích hoạt tính năng hoàn thành tên file và thư mục

Tính năng hoàn thành tên file và thư mục không được bật theo mặc định. Bạn có thể bật hoặc tắt tính năng hoàn thành tên file cho một quy trình cụ thể của lệnh cmd bằng /f:{on|off}. Bạn có thể kích hoạt hoặc vô hiệu hóa tính năng hoàn thành tên file và thư mục cho tất cả các quy trình của lệnh cmd trên máy tính, hoặc cho phiên đăng nhập của người dùng bằng cách đặt các giá trị REG_DWORD sau:

HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\CompletionChar\REG_DWORD
 
 HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\PathCompletionChar\REG_DWORD
 
 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\CompletionChar\REG_DWORD
 
 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\PathCompletionChar\REG_DWORD

Để đặt giá trị REG_DWORD, hãy chạy Regedit.exe và sử dụng giá trị thập lục phân của một ký tự điều khiển cho một hàm cụ thể (ví dụ, 0×9 là TAB và 0×08 là BACKSPACE). Cài đặt do người dùng chỉ định được ưu tiên hơn cài đặt máy tính và tùy chọn dòng lệnh được ưu tiên hơn cài đặt registry.

Thận trọng:

Việc chỉnh sửa registry không chính xác có thể làm hỏng hệ thống của bạn. Trước khi thực hiện thay đổi đối với registry, bạn nên sao lưu mọi dữ liệu quan trọng trên máy tính.

Nếu bạn bật tính năng hoàn thành tên file và thư mục bằng cách sử dụng /f:on, hãy sử dụng CTRL + D để hoàn thành tên thư mục và CTRL + F để hoàn thành tên file. Để vô hiệu hóa một ký tự hoàn thành cụ thể trong registry, hãy sử dụng giá trị cho khoảng trắng [0×20] vì nó không phải là ký tự điều khiển hợp lệ.

Khi bạn nhấn CTRL + D hoặc CTRL + F, lệnh cmd sẽ xử lý file và hoàn thành tên thư mục. Các hàm kết hợp quan trọng này gắn thêm một ký tự đại diện vào String (nếu chưa có), xây dựng một danh sách các đường dẫn phù hợp, và sau đó hiển thị đường dẫn hợp lệ đầu tiên. Nếu không có đường dẫn nào phù hợp, chức năng hoàn thành tên file và thư mục sẽ phát ra tiếng bíp và không thay đổi hiển thị.

Để di chuyển qua danh sách đường dẫn phù hợp, nhấn CTRL + D hoặc CTRL + F nhiều lần. Để di chuyển qua danh sách theo hướng ngược lại, nhấn đồng thời phím SHIFT và CTRL + D hoặc CTRL + F.

Để hủy danh sách các đường dẫn phù hợp đã lưu và tạo danh sách mới, hãy chỉnh sửa String và nhấn CTRL + D hoặc CTRL + F. Nếu bạn chuyển đổi giữa CTRL + D và CTRL + F, danh sách đã lưu của đường dẫn phù hợp sẽ bị hủy và danh sách mới sẽ được tạo.

Sự khác biệt duy nhất giữa tổ hợp phím CTRL + D và CTRL + F là CTRL + D chỉ khớp với tên thư mục và CTRL + F khớp với cả tên file và thư mục. Nếu bạn sử dụng tính năng hoàn thành tên file và thư mục trên bất kỳ lệnh thư mục tích hợp nào (nghĩa là, CD, MD hoặc RD), thì việc hoàn thành thư mục được giả định.

Việc hoàn thành tên file và thư mục xử lý chính xác tên file chứa khoảng trắng hoặc các ký tự đặc biệt nếu bạn đặt dấu ngoặc kép xung quanh đường dẫn phù hợp.

Các ký tự đặc biệt sau đây yêu cầu dấu ngoặc kép: & <> [] {} ^ =; ! '+, `~ [khoảng trắng].

Nếu thông tin mà bạn cung cấp chứa khoảng trắng, hãy sử dụng dấu ngoặc kép quanh văn bản (ví dụ: "Computer Name").

Nếu bạn xử lý hoàn thành tên file và thư mục từ bên trong String, bất kỳ phần nào của Path bên phải con trỏ sẽ bị hủy (tại một điểm trong String nơi quá trình xử lý được hoàn tất).

Xem thêm:

Thứ Tư, 07/11/2018 17:22
51 👨 429