mirror of
https://github.com/fleschutz/PowerShell.git
synced 2025-08-08 20:54:38 +02:00
Add search-filename.ps1
This commit is contained in:
28
Scripts/search-filename.ps1
Normal file
28
Scripts/search-filename.ps1
Normal file
@ -0,0 +1,28 @@
|
||||
# This script serves as a quick Powershell replacement to the search functionality in Windows.
|
||||
# After you pass in a root folder and a search term, the script will list all files and folders matching that phrase.
|
||||
param(
|
||||
[Parameter(Mandatory=$true)]
|
||||
$path,
|
||||
[Parameter(Mandatory=$true)]
|
||||
$term
|
||||
)
|
||||
# Recursive search function
|
||||
Write-Host "Results:"
|
||||
function Search-Folder($FilePath, $SearchTerm) {
|
||||
# Get children
|
||||
$children = Get-ChildItem -Path $FilePath
|
||||
# For each child, see if it matches the search term, and if it is a folder, search it too.
|
||||
foreach ($child in $children) {
|
||||
$name = $child.Name
|
||||
if ($name -match $SearchTerm) {
|
||||
Write-Host "$FilePath\$name"
|
||||
}
|
||||
$isdir = Test-Path -Path "$FilePath\$name" -PathType Container
|
||||
if ($isdir) {
|
||||
Search-Folder -FilePath "$FilePath\$name" -SearchTerm $SearchTerm
|
||||
}
|
||||
}
|
||||
}
|
||||
# Call the search function
|
||||
Search-Folder -FilePath $path -SearchTerm $term
|
||||
exit 0
|
Reference in New Issue
Block a user