Jef*_*ood 34 windows command-line-interface
删除给定文件夹中早于 (n) 天的所有文件的 Windows 命令行选项是什么?
另请注意,这些文件可能有数千个,因此forfiles
在这里使用 shellcmd
并不是一个好主意..除非您喜欢生成数千个命令 shell。我认为这是一个非常讨厌的黑客,所以让我们看看我们是否可以做得更好!
理想情况下,内置于(或可轻松安装到)Windows Server 2008 中。
Jef*_*ood 45
我环顾四周,找到了一种powershell方式:
从指定文件夹中删除所有超过 8 天的文件(带预览)
dir |? {$_.CreationTime -lt (get-date).AddDays(-8)} | del -whatif
Run Code Online (Sandbox Code Playgroud)
(删除 -whatif 以使其发生)
喜欢 Jeff 的 PowerShell 命令,但对于没有 PowerShell 的 Windows 机器的替代 vbs 解决方案,您可以尝试以下操作。
另存为<filename>.vbs
并执行:
<filename>.vbs <target_dir> <NoDaysSinceModified> [Action]
Run Code Online (Sandbox Code Playgroud)
第三个参数[Action]
是可选的。没有它,比<NoDaysSinceModified>
将列出的文件更旧。将其设置为D
将删除早于<NoDaysSinceModified>
例子
PurgeOldFiles.vbs "c:\Log Files" 8
Run Code Online (Sandbox Code Playgroud)
将列出c:\Log Files
超过 8 天的所有文件
PurgeOldFiles.vbs "c:\Log Files" 8 D
Run Code Online (Sandbox Code Playgroud)
将删除c:\Log Files
超过 8 天的所有文件
注意:这是SQLServerCentral.com上的Haidong Ji 脚本的修改版本
<filename>.vbs <target_dir> <NoDaysSinceModified> [Action]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
54968 次 |
最近记录: |