回答:
使用する:
ii .
の略
Invoke-Item .
これは、PowerShellコマンドラインで入力する最も一般的なものの1つです。
ii
はexplorer
、2番目のパラメータはパスです。
いくつかのオプションがあります。
例:
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
$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
^これらの2つのコマンドを実行すると、C:\ Users \ Foo \(含まれているディレクトリ)のexplorer.exeウィンドウではなく、Notepad.exeまたはFirefox.exeがそれぞれ2つのファイルで呼び出されます。
一方、Powershellからこのコマンドを発行している場合、これは大したことではありません(とにかく入力する必要はありません)。スクリプトで変数に対して「フォルダーを開く」必要がある場合、ディレクトリを抽出するために文字列照合の問題になります。ファイルへの絶対パス。
変数を置き換えることができるような単純なコマンド「Open-Containing-Folder」はありませんか?
例えば、
$foo = "C:\Users\Foo\foo.txt"
[some code] $fooPath
# opens C:\Users\Foo\ and not the default program for .txt file extension