where.exe
, como mencionado em um dos comentários, vem com o Windows 7 e superior. Outra coisa a notar é que where
somente pesquisa o %PATH%
, por isso, se o seu programa não estiver no caminho, ele não ajudará a localizá-lo.
Outro problema é que se você estiver tentando invocá-lo de dentro de um prompt do PowerShell, PRECISA para incluir a parte .exe, como "onde" é um alias para Where-Object, que NÃO é o que você quer e leva a resultados vazios com códigos de sucesso que obviamente não dizem onde o aplicativo desejado está realmente localizado.
Isso me levou algumas tentativas para descobrir, e apenas adicionando -?
, o que desencadeou a ajuda sobre o que o alias realmente resolveu me colocar.
Por sua pergunta, o motivo tf
funciona dentro do aplicativo / console do Visual Studio, há um atalho específico que eles incluem para iniciar um console do Visual Studio porque ele adiciona as pastas do aplicativo ao PATH quando iniciado.
Você pode definir seu próprio atalho para injetar o diretório do programa no seu PATH
ou simplesmente abrir o Menu Iniciar, digitar "env" e clicar no atalho "Editar variáveis de ambiente para sua conta" (ou no sistema um, mas que requer que você clique no botão Variáveis de ambiente), adicione uma nova variável PATH
na parte superior, em Variáveis de usuário, se ela não existir ou, se já existir, adicione um ;
antes de sua entrada e depois caminho da pasta onde o programa que você deseja chamar a partir da linha de comando. Por exemplo. clique duas vezes na entrada PATH
(não importa muito no Windows) para editá-la e alterá-la para C:\ExistingPathItem\bin;C:\Program Files (x86)\Microsoft\Visual Studio 2020\bin