Powershell删除文件并保留文本文件

时间:2013-07-26 08:44:51

标签: powershell archive delete-file

我正在设置一个脚本,该脚本将删除超过700天的文件。脚本的那一点工作正常。我测试了它,它的工作原理。我现在的任务是留下一个名为“删除文件名称”的文本文件,其中包含如何联系服务台请求恢复文件的详细信息。我不知道该怎么做。你能帮帮我吗?

这是我的删除脚本:

foreach ($path in Get-Content "pathList.txt") {
    Write-Host "Trying to delete files older than 700 days, in the folder $path" -ForegroundColor Green
    Get-ChildItem $path -Recurse -Include "*.*" | 
        WHERE {($_.CreationTime -le $(Get-Date).AddDays(-700))} | 
            Remove-Item -Force
}

1 个答案:

答案 0 :(得分:2)

为此你需要输入ForEach-Object,这样你就有机会为你删除的每个文件制作所需的文本文件。

Get-ChildItem $path -Recurse -Include "*.*" | 
    WHERE {($_.CreationTime -le $(Get-Date).AddDays(-700))} | 
        ForEach-Object {
            $text_file = [io.path]::ChangeExtension($_, 'txt')
            "Call help desk blah blah" | sc $text_file -Encoding ascii
            $_ | Remove-Item -Force
        }