internet2107
Goto Top

Powershell - Get-content where fullname

Hallo.
Mal wieder eine knifflige Aufgabe, die mich seit 2 Stunden graue Haare kostet face-sad

Im Code unten soll als Beispiel ein Pfad nach Dateien mit dem Namen "47564754444", oder auch Inhalte von Dateien mit dem Wert "47564754444" durchsucht werden.
Es macht das, was es soll.
Er gibt mir für die Datei die den Namen beinhaltet den Pfad (Fullname) an.
Er durchsucht die Dateien und findet auch Inhalte mit dem Wert. Hier aber bekomme ich zum Haare ausreißen jedoch nicht den Fullname hin. Er gibt mir immer wieder nur den Inhalt der Textdatei aus. Ich brauche aber nicht den Inhalt, sondern definitiv nur den Dateinamen inkl. Pfad.

$path = "g:\tools"  
Invoke-Command -ComputerName $computer -Credential $cred -ScriptBlock {
gci -path $using:path -recurse | Where-Object { $_.Name -like "*47564754444*" }  
$path_recursive = gci -path "$using:path\" -recurse -Include *.txt,*.log  
foreach ($file in $path_recursive) 
{	
Get-Content $file.FullName | Where-Object { $_ -like "*47564754444*" }	}  
}

Content-Key: 354932

Url: https://administrator.de/contentid/354932

Printed on: April 25, 2024 at 20:04 o'clock

Member: colinardo
Solution colinardo Nov 15, 2017 updated at 17:06:16 (UTC)
Goto Top
Servus,
$path = "g:\tools"  
Invoke-Command -ComputerName $computer -Credential $cred -ScriptBlock {
gci -path "$($using:path)" -recurse  | ?{!$_.PSIsContainer -and ($_.Name -like "*47564754444*" -or (select-string -Path $_.Fullname -Pattern "47564754444" -SimpleMatch -quiet)) } | select -Expand Fullname  
}
Grüße Uwe
Member: internet2107
internet2107 Nov 15, 2017 at 17:19:27 (UTC)
Goto Top
DANKE!!, genial.
Schönen, erholsamen Feierabend.