HOWTO · PowerShell
PowerShell を使用して名前で特定のファイルを検索する
Get-ChildItem コマンドレットは、名前または拡張子でファイルを検索するために使用できる便利な PowerShell ユーティリティです。 Windows エクスプローラーで検索するよりも、ファイルを簡単かつ迅速に見つけることができます。
この記事では、PowerShell を使用して特定のファイルを見つける方法を示します。
Get-ChildItem コマンドレットは、名前または拡張子でファイルを検索するために使用できる便利な PowerShell ユーティリティです。 Windows エクスプローラーで検索するよりも、ファイルを簡単かつ迅速に見つけることができます。
PowerShell Get-ChildItem を使用して名前で特定のファイルを検索する
PowerShell で Get-ChildItem コマンドレットを使用して、1つまたは複数の場所にあるファイルとフォルダーの一覧を表示できます。 検索パターンを追加して、出力を特定のファイルに絞り込むことができます。
いくつかの例を見てみましょう。
.txt 拡張子を持つ現在のフォルダー内のすべてのファイルを見つけたいと仮定すると、どうすればよいでしょうか?
以下に示すように、Get-ChildItem コマンドを実行します。
PS C:\Users> Get-ChildItem *.txt
上記のコマンドは、.txt 拡張子を持つ Users ディレクトリ内のすべてのファイルを検索します。 C:\ ドライブのルートにあるすべてのファイルを表示するにはどうすればよいでしょうか?
PS C:\pc\Users> Get-ChildItem -Path C:\
上記のコマンドで、Git-ChildItem コマンドレットは C:\ を -Path パラメータとして受け取り、その場所に保存されているすべてのファイルとディレクトリを表示します。
-Recurse パラメータを追加して、ドライブ C:\ の場所にあるすべてのファイルを検索して一覧表示できます。 ユーザーがアクセスできないファイルが存在する場合、コマンドはエラーをスローします。
エラーが発生した場合に操作を続行するには、以下に示すようにコマンドを実行します。
PS C:\pc\Users> Get-ChildItem -Path C:\ -Recurse -ErrorAction SilentlyContinue
除外するパターンを指定することもできます。 以下に例を示します。
PS C:\pc\Users> Get-ChildItem -Exclude *.exe -Recurse
上記のコマンドは、Users ディレクトリに存在するサブディレクトリ内のすべてのファイルを一覧表示し、.exe ファイル拡張子を持つファイルを除外します。
-Filter パラメーターを使用して、検索を特定のファイル拡張子に絞り込むこともできます。 以下の例をご覧ください。
PS C:\pc\Users> Get-ChildItem -Filter *.txt -Recurse
上記のコマンドは、拡張子が .txt のファイルのみを一覧表示します。 特定のファイル名を検索したい場合はどうすればよいでしょうか?
以下に示すように、Get-ChildItem コマンドを実行します。
PS C:\pc\Users> Get-ChildItem -recurse -filter "Trial" -File
上記のコマンドは、現在のフォルダーで Insert に一致するファイル名を持つファイルを再帰的に検索します。 以下に示すように、-Path パラメーターを使用してフォルダーを指定できます。
PS C:\pc\Users> Get-ChildItem -recurse -filter "Trial" -File -Path C:\
上記のコマンドは、C:\ ドライブで Insert に一致するファイル名を持つファイルを再帰的に検索します。 Get-ChildItem を完全に入力する代わりに、gci エイリアスを使用できます。
または、次を実行できます。
PS C:\pc\Users> Get-ChildItem -Recurse | Where {$_.Name -match 'Insert'} | Select Fullname
上記のコマンドでは、Get-ChildItem コマンドレットが現在のフォルダー内のファイルを再帰的に検索します。 Where-Object コマンドレットは、Insert に一致するファイル名プロパティを比較し、ファイルの完全な名前を出力します。
簡単に言うと、Get-ChildItem コマンドレットを使用して、PowerShell で特定のファイルを見つけることができます。
検索を絞り込むために使用できるさまざまなパラメーターがあります。 PowerShell を使用すると、Windows エクスプローラーで検索するよりもはるかに簡単で高速です。