powershell 删除除最后三个文件夹之外的所有文件夹

伊利亚

我在 Windows 机器上有一个文件夹 D:/Tests,它存储每天创建的文件夹。我需要在 Linux 机器上使用 ansible 运行的代码,该代码将删除除最后三个创建的文件夹之外的所有文件夹。我在stackoverflow中翻了几十篇文章,但是这些问题大部分都是使用bat文件解决的。对我来说,这个选项不合适。根据我的发现,这里与我需要的最相似:

Get-Childitem D:\Downloads_D -recurse | where {($_.creationtime -gt $del_date) -and ($_.name -notlike "*dump*" -and $_.name -notlike "*perform*")} | remove-item 

但是我对 Powershell 的了解不足以对其进行编辑以执行我的任务。有什么方法可以使用 ansible 模块、Windows 命令行命令或 Powershell 命令来实现我的目标?

路跑者

对于powershell,您可以执行以下操作:

Get-ChildItem -Path D:\Downloads_D -Directory | Sort-Object -Property CreationTime | Select-Object -SkipLast 3 | Remove-Item

说明

  • 使用-Directoryfrom过滤目录Get-ChildItem
  • CreationTime使用属性属性对目录进行排序Sort-Object
  • 使用Select-Object跳过最后 3 个目录-SkipLast 3这可确保不会删除最近创建的 3 个目录。
  • 管道Remove-Item删除目录

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从Powershell中删除文件夹?

Powershell:将所有文件从文件夹和子文件夹移至单个文件夹

如何递归删除PowerShell中的所有空文件夹?

Powershell取消阻止文件夹中的所有文件

在PowerShell中获得出色的大父文件夹路径(三个级别)?

PowerShell脚本以打印所有子文件夹

Powershell复制所有文件夹结构并排除一个或多个文件夹

PowerShell获取文件夹的已删除文件

使用PowerShell脚本从所有30天以上的子文件夹中删除文件

删除不在Powershell文件夹中的重复文件

Powershell获取所有文件和一个文件夹

Powershell删除除一个以外的所有文件夹

如何使用Powershell删除具有特定名称的所有文件夹

Powershell将所有子文件夹中的特定文件复制到单个文件夹

如何使用PowerShell从文件夹和所有子文件夹中删除所有访问规则?

PowerShell:DEL命令删除子文件夹中的文件

PowerShell脚本从隐藏文件夹中删除文件

Powershell删除文件夹而不拥有所有权?

Powershell脚本检查给定文件夹文件夹中是否存在文件列表中的所有文件

将“ .backup”附加到Powershell 2.0中的所有文件,文件夹和子文件夹

Powershell - 列出目录中的所有文件夹,在每个文件夹中提取最新的 .bak 文件,压缩它,将其复制到一个目录

PowerShell - 列出 TreeView GUI 元素中的所有文件夹和子文件夹

powershell 生成一个包含所有其他文件夹名称的列表

Powershell 根据日期范围条件删除文件夹文件

用于删除文件夹的Powershell脚本

Powershell 查找给定文件夹名称中的所有空文件夹和子文件夹

使用PowerShell删除文件夹的内容

使用 Powershell 删除多个特定命名文件夹和其他带有文件的子文件夹

PowerShell:将所有文件从子文件夹中的相同类型移动到子子文件夹