Yanıtlar:
kullanın:
ii .
ki bunun için kısadır
Invoke-Item .
PowerShell komut satırına yazdığım en yaygın şeylerden biri.
ii
IS explorer
, ikinci param yoludur.
Birkaç seçeneğiniz var:
Örnekler:
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
takma adıdırInvoke-Item
explorer .
explorer
benim yolumda gibi görünüyor
PowerShell'den bir Explorer penceresi açmanın bir yolunu arayan bu soruya rastladım ve ayrıca bir dosya seçin. Bu cevabı başkalarının da aynı nedenden dolayı karşılaşması durumunda ekliyorum.
Explorer'ı başlatmak ve bir dosya seçmek için şunu kullanın Invoke-Expression
:
Invoke-Expression "explorer '/select,$filePath'"
Muhtemelen bunu yapmanın başka yolları da var, ama bu benim için işe yaradı.
$startinfo = new-object System.Diagnostics.ProcessStartInfo
$startinfo.FileName = "explorer.exe"
$startinfo.WorkingDirectory = 'D:\foldername'
[System.Diagnostics.Process]::Start($startinfo)
Bu yardımcı olur umarım
start explorer.exe
Basit tek satır komutu
Bunu bir yorum olarak yazmak istedim ama 50 itibarım yok.
Bu konudaki tüm cevaplar temel olarak Invoke-Item kullanmak veya doğrudan explorer.exe kullanmak içindir; ancak, bu "açık klasör" ile tamamen eşanlamlı değildir, bu nedenle soru belirtildiği gibi bir Explorer penceresi açmak açısından, cevabı belirli bir dosyaya uygulamak istersek, soru hala cevaplanmamıştır.
Örneğin,
Invoke-Item C:\Users\Foo\bar.txt
explorer.exe C:\Users\Foo\bar.html
^ Bu iki komut, C: \ Users \ Foo \ (içeren dizin) üzerinde bir explorer.exe penceresi değil, sırasıyla iki dosyada Notepad.exe veya Firefox.exe dosyasının çağrılmasına neden olur.
Bir kişi bu komutu powershell'den yayınlıyorsa, bu büyük bir sorun olmaz (yine de daha az yazarak), eğer bir komut dosyasıysa ve bir değişken üzerinde "içeren klasörü aç" gerekiyorsa, dizini ayıklamak için bir dize eşleme meselesi haline gelir. dosyanın tam yolu.
Bir değişkenin yerine kullanılabilecek basit bir komut "Open-içeren-Klasör" yok mu?
Örneğin,
$foo = "C:\Users\Foo\foo.txt"
[some code] $fooPath
# opens C:\Users\Foo\ and not the default program for .txt file extension
Klasörün mevcut herhangi bir Explorer penceresinde Quizo Sekmesi olarak açılmasını istememe konusundaki benzersiz kısıtlamalarıma uyan tek şey budur .
$objShell = New-Object -ComObject "Shell.Application"
$objShell.Explore("path")