小编Jon*_*n J的帖子

用于删除最旧文件的 Powershell 脚本(与当前日期无关)

不要想“比X天的删除文件。” 如果我想这样做,我只会选择已经为此目的编写的数千个脚本中的一个,而且我不会费心在 ServerFault 上提出这样一个微不足道的问题。

确实想删除特定文件夹中除最近的 N 个文件之外的所有文件。

背景:远程系统配置为将定期存档文件转储到 Windows 服务器上的共享。这些文件的命名约定为 YYYYMMDD-hhmm.ext。如果存档过程失败,我不希望清除脚本仅仅因为文件比这么多天旧而删除文件。无法将远程系统配置为在归档过程中清除文件。

例如,当脚本运行时,文件夹中可能有 10 个文件,可能有 7 个文件,可能有 5 个文件。我需要始终至少保留最近的 5 个,无论它们有多大。

这可以用 PowerShell 完成吗?

编辑:忽略与命名约定不匹配的文件或文件夹是可取的。不应删除其他文件和文件夹,也不应将它们混淆(导致保留的存档文件少于 5 个)。

scripting powershell

5
推荐指数
2
解决办法
1万
查看次数

标签 统计

powershell ×1

scripting ×1