Відповіді:
Використання:
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, а також вибрати файл. Я додаю цю відповідь у випадку, якщо інші натрапляють на неї з тієї ж причини.
Щоб запустити Провідник і вибрати файл, використовуйте 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 або використанні Explor.exe безпосередньо; однак це не є повністю синонімом "відкрити папку, що містить", тому, з точки зору відкриття вікна Провідника, як зазначено в питанні, якщо ми хотіли застосувати відповідь до певного файлу, на це питання все ще не було відповіді.
наприклад,
Invoke-Item C:\Users\Foo\bar.txt
explorer.exe C:\Users\Foo\bar.html
^ ці дві команди призведуть до того, що Notepad.exe або Firefox.exe буде викликано у двох файлах відповідно, а не вікно Explor.exe на C: \ Users \ Foo \ (каталог, що містить).
Тоді як якщо хтось видав цю команду з powershell, це не буде великою справою (все одно менше набирати текст), якщо сценарій і потрібно "відкрити папку, що містить зміну", це стає предметом відповідності рядків для вилучення каталогу з повний шлях до файлу.
Чи не існує простої команди "Open-Contain-Folder", щоб змінна могла бути замінена?
наприклад,
$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")