Lệnh xem tất cả các lệnh Windows


1

Khi tôi gõ help trong dòng lệnh windows, nó liệt kê một loạt các lệnh. Tuy nhiên, tôi thấy rằng có một tập hợp các lệnh không xuất hiện trong danh sách này, ví dụ: nhiều lệnh mạng như ping, tracert, arp, netstat, net vv Tôi chắc chắn rằng đó cũng là một loạt các lệnh không kết nối mạng cũng không được liệt kê.

Vì vậy, câu hỏi của tôi là này. Tại sao các lệnh bổ sung này không được hiển thị trong help? Có tập hợp con / nhóm lệnh nào không help trình diễn? Có bất kỳ lệnh / phương thức nào để liệt kê tất cả các lệnh có thể được thực thi trong windows không? (Tôi không nói về .exes bổ sung được thêm vào đường dẫn khi một số phần mềm mới được cài đặt ..)


phiên bản nào của windows?
EBGreen

Vâng, mà không biết hệ điều hành của bạn điều này có thể không áp dụng. Nó không phải là một câu trả lời trực tiếp cho câu hỏi của bạn nào. Nếu bạn mở một dấu nhắc Powershell và gõ Get-Command, nó sẽ liệt kê tất cả các lệnh có sẵn. Được xây dựng trong các lệnh (cmdlets), bí danh, exes, v.v.
EBGreen

Câu trả lời:


1

Các lệnh được liệt kê trong trợ giúp là các lệnh nằm trong chính dấu nhắc lệnh. Các chương trình khác như ping, tracert, v.v. là các ứng dụng nằm trong thư mục tệp hệ thống. Bạn có thể chạy dir trong thư mục% systemroot% nếu bạn muốn xem tất cả các ứng dụng. Lưu ý: không phải tất cả các ứng dụng sẽ chạy trong vỏ dấu nhắc lệnh hoặc có thể không có giao diện dòng lệnh.


1

Chúng không được hiển thị trong help bởi vì chúng không được định nghĩa ở bất kỳ nơi nào

Các lệnh được hiển thị trong help được gọi là "tích hợp" (tức là "các lệnh tích hợp"). Chúng được cung cấp bởi vỏ ( cmd.exe ), và chỉ là các chức năng nội bộ. Mọi thứ khác là một chương trình bên ngoài được thực thi và chạy với các đối số được cung cấp.

Các chương trình này có thể là bất cứ nơi nào trong của bạn %PATH%. %PATH% là một biến hệ thống chứa danh sách các đường dẫn để tìm kiếm các chương trình có thể chạy. Về cơ bản nó chỉ là một danh sách các thư mục.

Khi bạn chạy ping X.X.X.X, nó bắt đầu xem qua chúng cho đến khi tìm thấy một thư mục có tệp gọi là ping.exe và cố gắng chạy nó với X.X.X.X là tham số đầu tiên. (Gợi ý, tôi nghĩ ping.exe trong C:\Windows\System32, nơi hầu hết các tiện ích mà bạn liệt kê trực tiếp)

Tại sao nó không liệt kê tất cả các chương trình có thể? Bởi vì có thể có hàng ngàn, và việc liệt kê tất cả chúng có thể mất một thời gian rất, rất dài (và mục đích của help là để liệt kê các phần tử tích hợp, để bạn biết các lệnh nào được shell cung cấp và sẽ có sẵn trên bất kỳ hệ thống Windows nào và không bị thiếu hoặc có thể bị thiếu hoặc khác nhau trên một hệ thống Windows cụ thể).


Khi điều tra sâu hơn, dường như có một vài lệnh được liệt kê trong help đó là các lệnh bên ngoài (như icacls ). Tôi chỉ có thể suy đoán lý do tại sao chúng được chọn để đưa vào, nhưng ở trên vẫn giữ nguyên tắc chung cho các shell (có thể là Windows, Linux hoặc OS X) và 90% + các lệnh được liệt kê bởi help.



Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.