簡體   English   中英

需要一個 powershell 腳本來從文本文件中讀取和獲取文件名

[英]Need a powershell script to read and fetch filenames from a text file

我有以下格式的文本文件 - fileList.txt

2017-01-05 13:27:35          0 logs/
2017-01-06 03:08:10        798 logs/Logs_2016-01-06.zip
2017-01-05 14:23:45          0 logs/logs/
2017-01-06 03:08:10        798 logs/Logs_2016-06-06.zip
2017-01-06 03:08:10        798 logs/Logs_2016-04-06.zip
2017-01-06 03:08:10        798 logs/Logs_2016-04-06.zip
2017-01-06 03:08:10        798 logs/Logs_2016-03-06.zip

我需要一個 powershell 腳本來獲取此文件中的所有文件名,例如:Logs_2016-03-06.zip,它的日期子字符串距當前日期超過 30 天,並將它們刪除到磁盤中。

我希望這個問題可以解釋我的問題。

只需使用一些字符串函數將您的文本轉換為 psobject,使用New-Timespan來獲取日期。 像這樣的東西:

Get-Content your_file.txt | % {
  New-Object psobject -Property @{
    days = (New-Timespan -start (Get-Date $_.Substring(0, 19)) -end (Get-Date)).Days
    file = $_ -replace '^.*\s\s\d+\s(.+)$', '$1'
  }
} | ? {$_.file -match '\.' -and $_.days -gt 30} | % {
  Remove-Item $_.file
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM