You can use this simple approach to start with your code. It will loop through all the items in the content tree with the start node you have given and check for a particular template item.
Then for each item it will search for fields and match the value that you want and will produce the values in the output and if you want you can list the Item or fields in the output as well.
Here is the code.
# Get all the child items under Home item where template name is test
$items = Get-ChildItem -Path master:/Sitecore/content/Home -Recurse | Where-Object { $_.TemplateName -eq "test"}
# Loop on each item that you get above
foreach($item in $items)
{
# Loop for each item field
foreach($field in $item.Fields)
{
# Check the value in the field that you want to search. In this case we are searching for HTTP and HTTPS
if($field -match '.*http.*')
{
# Show the Items those fields are having the values that you want
Write-Host $item.Name
}
}
}
It will give you the list of items in output like this.
Hope this is good for the starting point.
For more advanced information, please refer to this blog.
https://www.logicalfeed.com/posts/1222/powershell-script-to-search-a-keyword-in-all-items-in-sitecore
Thanks