Czy PowerShell ma odpowiednik which
polecenia występującego w większości (jeśli nie wszystkich) powłokach uniksowych?
Wiele razy chciałbym poznać lokalizację czegoś, co uruchamiam z wiersza poleceń. W Uniksie po prostu to robię which <command>
i to mi mówi. Nie mogę znaleźć odpowiednika w PowerShell.
źródło
Get-Command
znajdzie wiele wyników, zwraca tablicę. Ponadto, jeśli znalezione polecenie nie jest plikiem wykonywalnym,Path
jest niezdefiniowane ($null
). To sprawia, że odpowiedź tutaj jest niepraktyczna do ogólnego użytku bez ciężkich modyfikacji. Aby uzyskać dobry przykład obu tych przypadków, spróbujGet-Command where
.where
zamiast uczyć, jak ustawiać aliasy w Powershell, który nie jest tytułem pytania.which
. (where
nawiasem mówiąc, to tak naprawdę narzędzie systemu Windows , które może wykonywać wiele różnych rzeczy, z których jedna w przybliżeniu przybliża wyszukiwanie polecenia wzdłużPATH
.) Ponadto, nie ma nic złego w odpowiedzi, która wyjaśnia, jak zrobić to, o co pytano, i także inna, nieco bardziej zaangażowana rzecz oparta na tym.Odpowiedział także w 2008 roku: Czy w linii poleceń systemu Windows istnieje odpowiednik „które”?
Spróbuj
where
wykonać polecenie, jeśli zainstalowałeś zestaw zasobów.Najważniejsze części odpowiedzi:
źródło
źródło