[英]How to delete the smallest file in a directory recursively?
示例:根文件夹中有两个目录:
"Root folder" wishfull_script_to_delete_small_files.BAT "SubFolder_One" test1.txt.......... 1 kb test2.txt.......... 1.1 kb "SubFolder_Two" picture001.jpg..... 34 kb picture002.jpg..... 64 kb
所以我想自动删除test1.txt
和picture001.jpg
而不是脚本(批处理)本身(可能是最小的文件)。
如果您打算学习一些东西,PowerShell 是一个比cmd.exe
更强大的工具。 它适用于所有受支持的 Windows 系统。 如果编写正确,相同的代码可以在 UNIX、Linux 和 Mac 系统上运行不变。
一旦您确信将删除正确的文件,请从Remove-Item
命令中删除-WhatIf
。
Get-ChildItem -Recurse -Directory -Path 'C:\src\t' |
ForEach-Object {
Get-ChildItem -File -Path $_ |
Where-Object { $_.Name -ne $(Split-Path -Path $PSCommandPath -Leaf) } |
Sort-Object -Property Length |
Select-Object -First 1 |
Remove-Item -WhatIf
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.