我目前有一個輸出日誌文件,這個文件有點亂,並且快速增長。這是用於權限郵箱的大型腳本的調試輸出。我基本上只想刪除文件中的每一行,直到找到7天前的第一次迭代。PowerShell - 刪除文本文件的所有行,直到找到某個字符串
到目前爲止,我可以返回一個包含日期
$content = Get-Content $file
$lastweek = "{0:M/d/yyyy}" -f (get-date).AddDays(-7)
$content | Where-Object { $_.Contains("$lastweek") }
都行,但直到被發現,第一次我想不通的功能,只是消滅一切。
我已經嘗試了-replace:
$content -replace ".*$lastweek", " " | Set-Content $file -Force
但這似乎只從包含指定字符串的每一行的開頭代替。
拋出一個方法錯誤: 「方法的調用失敗,因爲[System.String]不包含名爲‘喜歡’方法」 我得到它一起工作: '$ content.Where({$ _ - like(「* $ lastweek *」)},'SkipUntil')' 謝謝。 – Justin
我的錯。我會解決答案。 – mjolinor