Suchen und Löschen mit Powershell
Ich möchte in einer txt datei einen WErt suchen und die damit verbundene Zeile komplett löschen
Hallo in die Expertenrunde,
ich habe vor einigen Wochen mit der PS begonnen und habe schon ein Problem welches mich seit einigen Tagen beschäftigt:
Anforderung ist eine Textdatei zu durchsuchen und wenn ich einen bestimmten Eintrag gefunden habe die ganze zeile zu löschen
Hier mal mein Ansatz
clear-Host
$file = Get-ChildItem "c:\batch\ps\test.txt"
foreach ($str in $file)
{
$content = Get-Content -path $str
$content | foreach {$linie -replace 'UPS', ''} | Set-Content $str
}
write-Host "After replace `n"
$file
Meine Datei wird durchsucht und wenn ich den String "UPS" finde wird er gelöscht . Sehr gut so ich möchte aber DIE GANZE ZEILE gelöscht haben
Hat jemand eine Ahnung wo mein Fehler liegt
Danke schon mal im Voraus
Gruß
Engineer
ich habe vor einigen Wochen mit der PS begonnen und habe schon ein Problem welches mich seit einigen Tagen beschäftigt:
Anforderung ist eine Textdatei zu durchsuchen und wenn ich einen bestimmten Eintrag gefunden habe die ganze zeile zu löschen
Hier mal mein Ansatz
clear-Host
$file = Get-ChildItem "c:\batch\ps\test.txt"
foreach ($str in $file)
{
$content = Get-Content -path $str
$content | foreach {$linie -replace 'UPS', ''} | Set-Content $str
}
write-Host "After replace `n"
$file
Meine Datei wird durchsucht und wenn ich den String "UPS" finde wird er gelöscht . Sehr gut so ich möchte aber DIE GANZE ZEILE gelöscht haben
Hat jemand eine Ahnung wo mein Fehler liegt
Danke schon mal im Voraus
Gruß
Engineer
Please also mark the comments that contributed to the solution of the article
Content-Key: 151569
Url: https://administrator.de/contentid/151569
Printed on: April 19, 2024 at 22:04 o'clock
2 Comments
Latest comment
Hallo, probier mal folgendes:
Viele Grüße vom creyzee
clear-Host
$file = Get-Content "f:\test.txt"
$str | out-file f:\test.txt # Inhalt der Datei löschen
foreach ($str in $file)
{
if ($str -like '*UPS*') {
# SubString ist nicht enthalten; die * sind bedingt erforderlich
} else {
$str | out-file f:\test.txt -append # SubString ist enthalten -> Zeile wird an die Datei angehängt
}
}
Viele Grüße vom creyzee