Powershell - Get-content where fullname
Hallo.
Mal wieder eine knifflige Aufgabe, die mich seit 2 Stunden graue Haare kostet
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.
Mal wieder eine knifflige Aufgabe, die mich seit 2 Stunden graue Haare kostet
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*" } }
}
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 354932
Url: https://administrator.de/contentid/354932
Ausgedruckt am: 25.11.2024 um 09:11 Uhr
2 Kommentare
Neuester Kommentar
Servus,
Grüße Uwe
$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
}