首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >正在尝试找到一种方法来保持7天信息的MIR‘’ed目录最新

正在尝试找到一种方法来保持7天信息的MIR‘’ed目录最新
EN

Stack Overflow用户
提问于 2018-08-23 02:52:46
回答 2查看 506关注 0票数 0

我正在尝试使用Robocopy (Win10)来维护一个7天的音乐目录,该目录将“老化”,而前8天的音乐将被删除。我每晚运行这个脚本。

我已经试过了,很简单:

代码语言:javascript
复制
robocopy c:\music c:\music7 /MIR /MAXAGE:7 /S

初始拷贝的效果很好;但发生的情况是,8天前(或更早)的文件在第8天不会从music7目录中“清除”。我是不是在robocopy中遗漏了一个参数来剔除它们?

您还可以通过运行第一个命令来重现此过程:

代码语言:javascript
复制
robocopy c:\music c:\music7 /MIR /MAXAGE:7

然后重新运行将MAXAGE更改为lower

代码语言:javascript
复制
robocopy c:\music c:\music7 /MIR /MAXAGE:2

请注意,第3-7天的内容不会被删除。

EN

回答 2

Stack Overflow用户

发布于 2018-08-24 10:24:57

非常感谢你的评论。经过进一步的研究,我能够在批处理文件中使用ForFiles命令和Robocopy获得我在CMD中的状态。

与以下代码行类似:

代码语言:javascript
复制
ForFiles /p "c:\music7" /d -7 /c "cmd /c del @path /Q /S"

ForFiles /p "c:\music7" /d -7 /c "cmd /c rd @path /Q"

Robocopy c:\music c:\music7 /MIR /MAXAGE:6

事情可能会变得有点奇怪,因为我可以让一些目录的日期似乎比它们下面的文件更早或更晚被修改,所以我不能只做一个破坏性的RD /S;robocopy会在运行时重新添加这些文件。

PS -对于那些好奇的人来说,这种方法让我可以有效地为Groove模拟基于时间的自动播放列表,而Groove本身并不像WMP或Zune那样支持它。我可以将7天的歌曲推送到OneDrive\Music中,并在播放器客户端中对其进行过滤,以播放我收藏的这一子集。现在我有了一个方法,任务调度程序自动清除超过7天的内容。再次感谢。

票数 0
EN

Stack Overflow用户

发布于 2018-08-23 09:49:58

在你的机器复制或一个单独的进程之后的powershell中

代码语言:javascript
复制
        Get-ChildItem -file -path C:\music ($_.CreationTime -le (Get-Date).AddDays(-8)) | remove-item
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51973403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档