`
923723914
  • 浏览: 638987 次
文章分类
社区版块
存档分类
最新评论

利用PS脚本自动删除7天前建立的数据-方法2!

 
阅读更多

前面我们介绍了一种方法,就是基于命名规则的方式进行数据删除,那种方法具有特殊情景,不适合所有状况,思维方法供各位PS友参考,下面介绍另外一种方法,相对来说更加直接和简单,供大家参考,下面是相应的脚本:

param
(
[string]$removepath="d:\temp\bak",

#定义需要移除的文件路径
[string]$logfilepath="d:\log\remove.log",

#定义删除的时候需要记录的日志
[datetime] $KeepDate

#定义日期类型数据
)
$KeepDate=(Get-Date).adddays(-7)

#求出7天前的日期
$RemoveDirectorys=Get-ChildItem -Path $removepath | Where-Object {$_.creationtime -lt $KeepDate}

#求出7天前建立的目录及文件

if(!(test-path $logfilepath))

#如果日志目录不存在
{
New-Item -ItemType file -Path $logfilepath

#新建文件
}

foreach($RemoveDirectory in $RemoveDirectorys)

#根据得出目录组进行相应的目录循环
{
$removestring="位于"+$removepath+"的"+$RemoveDirectory.name+"目录于"+(Get-Date).tostring("yyyy年MM月dd日HH时mm分ss秒")+"被删除"

#求出记录到日志的日志内容
Remove-Item -Path $RemoveDirectory.fullname -force -Recurse

#执行目录删除
if($?)

#如果目录成功删除,上一条命令成功执行
{
$removestring |Out-File -Append -filepath $logfilepath

#就将日志内容记录到相应的文本文件中
}

}


我们执行以后,发现结果是一样的,不过这种方法更加简单明了!



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics