您的位置:首页 > 运维架构 > Shell

Powershell按文件最后修改时间删除多余文件

2014-02-10 17:10 465 查看

Powershell按文件最后修改时间删除多余文件

1. 删除目录内多余文件,目录文件个数大于$count后,按最后修改时间倒序排列,删除最旧的文件。

Sort-Object -Property LastWriteTime -Descending 按照文件的最后修改时间倒序排列

Select-Object -Skip $count 跳过开头的$count条数据,取剩余的数据


$count = 3
$filePathList = "E:\MySql\1",
"E:\MySql\2",
"E:\MySql\3"

foreach($filePath in $filePathList)
{
$files = Get-ChildItem -Path $filePath | Sort-Object -Property LastWriteTime -Descending | Select-Object -Skip $count
if ($files.count -gt 0) {
foreach($file in $files)
{
Remove-Item $file.FullName -Recurse -Force
}
}
}


2. 删除目录内所有文件修改时间超过timeOutDay的文件。

$timeOutDay = 30
$filePath = "H:\DataBackup\File\1",
"H:\DataBackup\Database\2"

$allFile = Get-ChildItem -Path $filePath

foreach($file in $allFile)
{
$daySpan = ((Get-Date) - $file.LastWriteTime).Days
if ($daySpan -gt $timeOutDay)
{
Remove-Item $file.FullName -Recurse -Force
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: