Tương đương với Windows của Windows mà lệnh Command trong Unix là gì? Có lệnh PowerShell tương đương không?


Câu trả lời:


79

Một số phiên bản Windows (tôi nghĩ Windows 2003 trở lên) có lệnh where:

c:\>where ping
C:\Windows\System32\PING.EXE

5
wherelàm việc cho tôi trong Windows 7
Nam G VU

6
Điều này chỉ hoạt động trong cmd, không phải trong PowerShell (theo kinh nghiệm của tôi)
Thomas

where /r c:\ fileNamethêm / rc: \ cho phép tôi thực hiện tìm kiếm đệ quy bắt đầu từ thư mục gốc của ổ C bằng Windows 7 Professional, nó dường như không có trong access.redhat.com/documentation/en-US/Red_Hat_ Entryprise_Linux / điều
CrandellWS

6
trong Powershell bạn nên nói where.exe pingbởi vì wheretheo mặc định là bí danh của Where-Objectcmdlet, đó là câu chuyện hoàn toàn khác
maoizm

where.exerõ ràng thay vì wherelàm việc cho tôi trong PowerShell
drkvogel

36

Có, Get-Commandsẽ tìm thấy tất cả các lệnh bao gồm cả thực thi:

PS\> Get-Command ipconfig

Nếu bạn muốn giới hạn các lệnh chỉ thực thi:

PS\> Get-Command -CommandType Application

Sẽ tìm thấy tất cả exes trong con đường của bạn. Có một bí danh để sử dụng tương tác:

PS\> gcm net* -CommandType Application

Để có được đường dẫn của một tệp thực thi, bạn có thể sử dụng thuộc Pathtính của đối tượng được trả về. Ví dụ:

PS\> (Get-Command notepad.exe).Path

Để biết thêm thông tin, hãy chạy man Get-Command -full.


2

Ngoài user10404, lệnh trợ giúp sẽ hoạt động trên các bí danh, vì vậy bạn có thể sử dụng cùng tên lệnh (gcm) để trợ giúp và sử dụng tương tác:

help gcm -Parameter *
# or
man gcm -Par *

2

Nếu bạn muốn làm cho nó ngắn, hãy tạo một tệp which.cmd với nội dung

echo %~$PATH:1

Điều này sẽ tìm kiếm tham số đầu tiên (% 1) được cung cấp cho tập lệnh và hiển thị đường dẫn đầy đủ của tệp tìm thấy. Vị trí tốt để đặt tập lệnh này trong windows 10 là% LOCALAPPDATA% \ Microsoft \ WindowsApps \ which.cmd

Và bạn nhận được lệnh nào trong đường dẫn.

c:\>which cmd.exe

c:\>echo C:\Windows\System32\cmd.exe
C:\Windows\System32\cmd.exe

1

where.exerõ ràng hơn là wherehoạt động với tôi trong PowerShell:

PS C:\Users\birdc> where ping
PS C:\Users\birdc> where.exe ping
C:\Windows\System32\PING.EXE

Hoạt động trên Windows 10 1903.
Siêu âm54321

Trong PowerShell? Tôi đang dùng Windows 10 Pro 1903 và không where pingcho tôi biết gì về PowerShell.
drkvogel

Xin lỗi tôi đã không rõ ràng. Tôi có nghĩa where.exe.
Siêu âm54321
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.