Respostas:
Usar:
ii .
que é abreviação de
Invoke-Item .
É uma das coisas mais comuns que digito na linha de comando do PowerShell.
ii
é explorer
, o segundo parâmetro é path.
Você tem poucas opções:
Exemplos:
PS C:\> explorer
PS C:\> explorer .
PS C:\> explorer /n
PS C:\> Invoke-Item c:\path\
PS C:\> ii c:\path\
PS C:\> Invoke-Item c:\windows\explorer.exe
PS C:\> ii c:\windows\explorer.exe
PS C:\> [diagnostics.process]::start("explorer.exe")
ii
é um alias deInvoke-Item
Basta usar o Invoke-Item
cmdlet. Por exemplo, se você deseja abrir uma janela do explorer no diretório atual, pode:
Invoke-Item .
explorer .
explorer
parece estar fora meu caminho
Me deparei com esta pergunta procurando uma maneira de abrir uma janela do Explorer no PowerShell e também selecionar um arquivo. Estou adicionando esta resposta caso outras pessoas a encontrem pelo mesmo motivo.
Para iniciar o Explorer e selecionar um arquivo, use Invoke-Expression
:
Invoke-Expression "explorer '/select,$filePath'"
Provavelmente existem outras maneiras de fazer isso, mas isso funcionou para mim.
$startinfo = new-object System.Diagnostics.ProcessStartInfo
$startinfo.FileName = "explorer.exe"
$startinfo.WorkingDirectory = 'D:\foldername'
[System.Diagnostics.Process]::Start($startinfo)
Espero que isto ajude
start explorer.exe
Comando simples de linha única
Eu queria escrever isso como um comentário, mas não tenho 50 reputação.
Todas as respostas neste tópico são essencialmente para usar Invoke-Item ou usar explorer.exe diretamente; no entanto, isso não é completamente sinônimo de "abrir pasta contendo", portanto, em termos de abrir uma janela do Explorer como a pergunta indica, se quisermos aplicar a resposta a um arquivo específico, a pergunta ainda não foi realmente respondida.
por exemplo,
Invoke-Item C:\Users\Foo\bar.txt
explorer.exe C:\Users\Foo\bar.html
^ esses dois comandos resultariam na chamada do Notepad.exe ou do Firefox.exe nos dois arquivos, respectivamente, não em uma janela do explorer.exe em C: \ Users \ Foo \ (o diretório que contém).
Considerando que, se alguém estivesse emitindo esse comando do PowerShell, isso não seria grande coisa (menos digitando de qualquer maneira), se alguém estiver usando scripts e precisar "abrir pasta contendo" em uma variável, será uma questão de correspondência de string para extrair o diretório de o caminho completo para o arquivo.
Não existe um comando simples "Pasta aberta que contenha uma variável que possa ser substituída?
por exemplo,
$foo = "C:\Users\Foo\foo.txt"
[some code] $fooPath
# opens C:\Users\Foo\ and not the default program for .txt file extension
Essa é a única coisa que se encaixa nas minhas restrições exclusivas de querer que a pasta seja aberta como uma guia Quizo em qualquer janela existente do Explorer.
$objShell = New-Object -ComObject "Shell.Application"
$objShell.Explore("path")