Unix의 "which"명령에 해당하는 Windows는 무엇입니까? 동등한 PowerShell 명령이 있습니까?


답변:


79

일부 Windows 버전 (Windows 2003 이상)에는 where 명령이 있습니다.

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

5
whereWindows 7에서 나를 위해 일하십시오
Nam G VU

6
이것은 PowerShell이 ​​아닌 cmd에서만 작동합니다 (제 경험상)
Thomas

where /r c:\ fileName/ rc : \를 추가하면 Windows 7 Professional을 사용하여 C 드라이브의 루트에서 시작하여 재귀 검색을 수행 할 수있었습니다. access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/…
CrandellWS

6
Powershell 에서는 기본적으로 완전히 다른 이야기 인 cmdlet 으로 별칭이 지정되어 where.exe ping있기 때문에whereWhere-Object
maoizm

where.exewherePowerShell에서 나를 위해 명시 적으로 작동하기 보다는
drkvogel

36

예, Get-Command실행 파일을 포함한 모든 명령을 찾습니다.

PS\> Get-Command ipconfig

명령을 실행 파일로만 제한하려면 다음을 수행하십시오.

PS\> Get-Command -CommandType Application

경로에서 모든 exe를 찾을 수 있습니다. 대화식 사용을위한 별명이 있습니다.

PS\> gcm net* -CommandType Application

실행 파일의 경로를 얻으려면 Path반환 된 객체 의 속성을 사용할 수 있습니다 . 예를 들면 다음과 같습니다.

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

자세한 내용을 보려면을 실행하십시오 man Get-Command -full.


2

user10404 외에도 help 명령이 별명에서 작동하므로 도움말 및 대화식으로 동일한 명령 이름 (gcm)을 사용할 수 있습니다.

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

2

짧게 만들려면 내용이 포함 된 한 줄 which.cmd 파일을 만드십시오.

echo %~$PATH:1

스크립트에 공급 된 첫 번째 매개 변수 (% 1)를 검색하고 찾은 파일의 전체 경로를 표시합니다. 이 스크립트를 Windows 10에 넣을 수있는 좋은 장소는 % LOCALAPPDATA % \ Microsoft \ WindowsApps \ which.cmd입니다.

그리고 당신은 길에서 당신의 명령을 얻습니다.

c:\>which cmd.exe

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

1

where.exewherePowerShell에서 나를 위해 작동하는 대신 명시 적으로

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

Windows 10 1903에서 작동합니다.
Ultrasonic54321

PowerShell에서? 저는 Windows 10 Pro 1903을 사용하고 where ping있으며 PowerShell에서는 아무것도 제공하지 않습니다.
drkvogel

불분명해서 죄송합니다. 나는 의미했다 where.exe.
Ultrasonic54321
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.