好的,我确信这是一个简单的问题,但是在批处理脚本和编程方面我还是个新手,所以我希望我能在这里找到我想要的答案。
机器规格
操作系统 - Windows Server 2003 R2 标准版 Service Pack 2
内存——4GB
CPU - 双核 Xeon 2.67GHz
情况
我有一台服务器,里面有一块硬盘,我用它来存储电话录音,它只有 350GB 的空间,而且已经满了,所以我的录音将无法再存储,除非我清除它。这些录音从 2011 年开始堆积,因此手动复制文件几乎是不可能的,因为我没有那么多 RAM,而且每次我尝试时,Windows 总是超时并且没有响应。
我需要做什么
我需要一个脚本,它将获取某个日期之前(即 2013 年 1 月 1 日之前)的文件并将它们移动到我的 NAS 设备上的共享位置 \192.168.xx\Recordings,并且在将它们复制到该共享后从硬盘中删除原始文件以释放该空间。
我确信这是一个很容易甚至可能很愚蠢的问题,但我真的需要完成这个问题,因为这对我们的客户/员工至关重要。
提前感谢您的帮助答案!非常感谢!
答案1
如果你下载并安装 Windows 2000 资源工具包,它包含一个名为的命令行实用程序robocopy
,可以使用一个命令执行此任务。
下面是如何使用robocopy
它的一个例子:
robocopy.exe C:\from_location C:\to_locations *.* /MAXAGE:MaximumAgeOfFilesToCopy /MINAGE:MinimumAgeOfFilesToCopy
下面来自 Robocopy 的帮助 ( ),解释了和选项的工作robocopy /?
原理:/MAXAGE
/MINAGE
/MAXAGE:n :: MAXimum file AGE - exclude files older than n days/date.
/MINAGE:n :: MINimum file AGE - exclude files newer than n days/date.
/MAXLAD:n :: MAXimum Last Access Date - exclude files unused since n.
/MINLAD:n :: MINimum Last Access Date - exclude files used since n.
(If n < 1900 then n = n days, else n = YYYYMMDD date).