gpt4 book ai didi

c# - 创建自动过期文件

转载 作者:可可西里 更新时间:2023-11-01 09:35:00 26 4
gpt4 key购买 nike

我经常使用各种 shell 脚本创建日志/报告文件。这很好,但大多数时候我只需要简单地看一下内容 - 通常是同一天或最多一周后。

我想做的是能够将文件标记为过期,以便在给定的时间段后,文件被删除或移动到存档目录。

因为我可以控制文件的创建,所以我当然可以给它一个特定的扩展名,例如.SEF 并编写一个服务来定期解析我硬盘上的目录,但这似乎有点笨拙。

我还研究了自定义文件属性:

http://social.msdn.microsoft.com/Forums/en/netfxbcl/thread/173ab6de-3cd8-448f-8c42-de9d2240b913

但是我需要写一些东西来将文件属性添加到文件中。所以在 Powershell/SFU 或类似的:

cat JobOutput.txt | grep -e Error | expire > report.txt

或普通的旧 window :

type JobOutput.txt | findstr Error | expire > report.txt

有没有人远程做过这样的事情?

编辑:

我上面描述的只是我想做的事情的一方面。例如,您可能想要发送一封需要在时限内回复的电子邮件,然后在该时间后被删除。

另一个示例可能是您发布的文档,其中包含您不希望在给定时间后使用的临时系统解决方法的详细信息。

当然,我们现在正在研究各种变幻莫测的应用程序,但自定义文件属性的想法看起来很有前途且很有吸引力。问题当然是如何将它们应用于每种文件类型......

现在,我很高兴根据我最初提出的问题结束这个问题,在这种情况下,我可以定义一个自定义扩展,它会被计划的作业清除。

解决方案:

好的,我决定使用 Powershell 解决方案(稍作调整),因为我对此非常熟悉:

$HowManyDays = 15  
$LastWrite = (Get-Date).AddDays(-$HowManyDays)
Get-ChildItem -recurse -include *.sef |
Where {$_.LastWriteTime -le "$LastWrite"} |
Remove-Item

非常感谢您对此的帮助。

最佳答案

如果您对 Alex K. 提供的内容相当满意,那么调整应该很容易。

创建一个 cmd 文件,当你调用它时传入文件搜索模式,如果是 *.* 那么就这样吧。

在cmd文件中调用:

robocopy "c:\from" "c:\to" /s %1 /MINAGE:7 /MOV 

参见:How do I pass command line parameters to a batch file?

关于c# - 创建自动过期文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12194739/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com