2017-10-09 9 views
1

私はwhere.exeが私に与えるPowerShell内の同じ機能を望んでいます。PowerShell内で `where.exe`を実行する

私は実行可能ファイルでは何も見つからない標準に代わるコマンドレットを見つけようとしました。

デフォルトでは、PowerShell内でwhereコマンドを実行しようとしましたが、そのコマンドにマップされた別名があります。

 
PS C:\> Get-Command where 

CommandType  Name           Version Source 
-----------  ----           ------- ------ 
Alias   where -> Where-Object 

PowerShell内whereを実行する方法はありますか、同じ結果を達成するためのより良い方法はありますか?

+1

'Get-Command notepad -CommandType Application' – PetSerAl

+0

Get-Commandは検索では機能しません。 –

+1

powershell内でwhere.exe(または任意の実行可能ファイル)を実行することができます。 '&where.exe/R C:\ Windows notepad.exe' –

答えて

2

既存のwhereエイリアスは削除されません。これにより、スクリプトが失敗する可能性があるためです。代わりに、あなたはそれのための新しいエイリアス定義することができます。

Set-Alias -Name "wherecli" -Value "where.exe" 

をそして、あなたはwherecliを使用することができます。

+0

ああ、ええ、良い回避策!特定のセッションにエイリアスを設定することは可能ですか?ありがとう –

+0

コマンドレットは現在のセッションのエイリアスのみを設定します;-) –

+1

これを見て、Doh! –

2

私はGet-ChildItemWhere-Objectで回避策を見つけましたが、これはwhere.exeよりも遅く見えますが、検索しているものに応じてリストすると便利だと思いました。もちろん

PS C:\> Get-ChildItem -Path "c:\Windows\" -Recurse -File | Where-Object {$_.Name -eq "notepad.exe"} 
+0

フィルタパラメータを使用すると、どこのオブジェクトにパイプするよりも速くなるはずです。 'Get-ChildItem -Path" c:\ Windows \ "-Recurse -File -Filter 'notepad.exe" 。exe –

1

あなたはWhere-Objectを指すwhereエイリアスを削除したくない場合、あなたは.exeを入力することができます(TABキーに続いて.を入力すると十分である)、のように:

where.exe notepad 

それ以外の場合は、-Allパラメータ(PowerShell 3以降)を使用してGet-Command(エイリアスgcm)を試してみましたか?たとえば:

CommandType  Name            Version Source 
-----------  ----            ------- ------ 
Application  notepad.exe          10.0.10... C:\Windows\system32\notepad.exe 
Application  notepad.exe          10.0.10... C:\Windows\notepad.exe

そして、それは与えられる例gcm where -Allのように、同様PowerShellのものを見つけるでしょう:私のマシンで

gcm notepad -All 

、与え

CommandType  Name            Version Source 
-----------  ----            ------- ------ 
Alias   where -> Where-Object 
Application  where.exe           10.0.10... C:\Windows\system32\where.exe

の場合 "標準"エイリアスを削除する場合はを使用してください(PowerShellの起動時にプロファイルファイルを作成することができます)。

+0

:thumbsup: '.exe'拡張子を含むことで' where'を実行できることに注意してください –

関連する問題