Ответы:
Использование:
ii .
что коротко для
Invoke-Item .
Это одна из самых распространенных вещей, которые я печатаю в командной строке PowerShell.
ii
это explorer
, второй параметр это путь.
У вас есть несколько вариантов:
Примеры:
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
является псевдонимомInvoke-Item
explorer .
explorer
кажется, что я не в своем направлении
Я столкнулся с этим вопросом в поисках способа открыть окно проводника в PowerShell, а также выбрать файл. Я добавляю этот ответ на случай, если другие столкнутся с ним по той же причине.
Чтобы запустить Explorer и выбрать файл, используйте Invoke-Expression
:
Invoke-Expression "explorer '/select,$filePath'"
Возможно, есть и другие способы сделать это, но у меня это сработало.
$startinfo = new-object System.Diagnostics.ProcessStartInfo
$startinfo.FileName = "explorer.exe"
$startinfo.WorkingDirectory = 'D:\foldername'
[System.Diagnostics.Process]::Start($startinfo)
Надеюсь это поможет
start explorer.exe
Простая однострочная команда
Я хотел написать это как комментарий, но у меня нет 50 репутации.
Все ответы в этой теме в основном должны использовать Invoke-Item или напрямую использовать explorer.exe; однако, это не полностью синонимично с «открытием, содержащим папку», так что с точки зрения открытия окна Проводника, как говорится в вопросе, если мы хотим применить ответ к определенному файлу, на этот вопрос все еще действительно нет ответа.
например,
Invoke-Item C:\Users\Foo\bar.txt
explorer.exe C:\Users\Foo\bar.html
^ эти две команды приведут к тому, что Notepad.exe или Firefox.exe будут вызваны для этих двух файлов соответственно, а не для окна explorer.exe в C: \ Users \ Foo \ (содержащий каталог).
Принимая во внимание, что если кто-то запускал эту команду из powershell, это не составило бы большого труда (в любом случае это было бы меньше ввода), если кто-то создает сценарии и ему нужно «открыть папку с переменной» для переменной, это становится вопросом соответствия строк для извлечения каталога из полный путь к файлу.
Нет ли такой простой команды «Открыть-содержащую-папку», которая могла бы заменить переменную?
например,
$foo = "C:\Users\Foo\foo.txt"
[some code] $fooPath
# opens C:\Users\Foo\ and not the default program for .txt file extension
Это единственное, что соответствует моим уникальным ограничениям: открывать папку как вкладку Quizo в любом существующем окне проводника.
$objShell = New-Object -ComObject "Shell.Application"
$objShell.Explore("path")