Powershell:记录我删除的文件
刚加入powershell,需要一些帮助。“我的脚本”搜索测试文件夹和子文件夹,然后删除超过21天的文件。我想在日志文件中记录所有已删除的文件Powershell:记录我删除的文件,powershell,Powershell,刚加入powershell,需要一些帮助。“我的脚本”搜索测试文件夹和子文件夹,然后删除超过21天的文件。我想在日志文件中记录所有已删除的文件 cls $Now = Get-Date $Days = "21" $Targetfolder = "c:\TEST" #----- define LastWriteTime parameter based on $Days ---# $LastWrite = $Now.AddDays(-$Days) #----- get files base
cls
$Now = Get-Date
$Days = "21"
$Targetfolder = "c:\TEST"
#----- define LastWriteTime parameter based on $Days ---#
$LastWrite = $Now.AddDays(-$Days)
#----- get files based on lastwrite filter and specified folder ---#
$Files = Get-Childitem $TargetFolder -Include $Extension -Exclude *.xml -Recurse | where { $_.LastWriteTime -le "$LastWrite" }
foreach ($File in $Files) {
if ($File -ne $Null) {
write-host "Deleting File --> $File" -ForegroundColor "Green"
Remove-Item $File.FullName | out-null
}
}
添加内容$filename$value
就可以了
cls
$Now = Get-Date
$Days = "21"
$Targetfolder = "c:\TEST"
$LogFile = "C:\DeletedFiles.txt"
#----- define LastWriteTime parameter based on $Days ---#
$LastWrite = $Now.AddDays(-$Days)
#----- get files based on lastwrite filter and specified folder ---#
$Files = Get-Childitem $TargetFolder -Include $Extension -Exclude *.xml -Recurse |
where {$_.LastWriteTime -le "$LastWrite"}
foreach ($File in $Files) {
if ($File -ne $Null) {
Add-Content $LogFile $File.FullName
write-host "Deleting File --> $File" -ForegroundColor "Green" Remove-Item $File.FullName | out-null
}
}
如果您想使其更加健壮,可以向文件添加时间戳,以便知道文件何时被删除
$myDate = get-date -format -g
$content = $myDate + " " + $File.FullName
Add-Content $LogFile $content
将输出写入日志文件的最简单方法是使用-Verbose,然后在命令后使用write Verbose或4>
Remove-Item $File.FullName -Verbose 4> $log_file_path
欢迎来到StackOverflow!请将您的代码示例发布到您的问题中,而不是发表评论。“那样的话,追踪它就容易多了。”克里斯迈克尔很高兴听到这个消息。如果这个答案解决了你的问题,请投票并标记完成。