PowerShell以递归方式删除目录中小于500字节的文件

时间:2015-01-12 08:12:17

标签: powershell

任何人都可以帮助我使用PowerShell脚本。我在网上搜索,无法得到准确的答案。 我需要一个脚本,它将在文件夹中递归删除所有文件,扩展名为.stat,并且所有文件都小于500bytes。如果脚本首先给我所有文件和将要删除的文件数,那将会很好然后点击一个输入它将继续删除所有文件

3 个答案:

答案 0 :(得分:4)

使用Get-Childitem非常直接,帮助了Where-Object和ForEach-Object:

$path = 'some path defined here'
Get-ChildItem $path -Filter *.stat -recurse |?{$_.PSIsContainer -eq $false -and $_.length -lt 500}|?{Remove-Item $_.fullname -WhatIf}

在测试后删除-whatif以确保代码删除了您想要的文件。

答案 1 :(得分:1)

如果您有大量的子文件夹要递归,那么您可能想要为Get-ChildItem尝试-file开关,因为使用文件系统提供程序进行过滤比使用Where-Object更有效。



Get-ChildItem $path -Filter *.stat -recurse -file | ? {$_.length -lt 500} | % {Remove-Item $_.fullname -WhatIf}




答案 2 :(得分:0)

更简单的解决方案:

 $('#mylist .BR').click(function(){
    var src = $(this).attr('src');
    var big = $('BRBIG');

    big.attr('src', src);

    $('#brbigcon').show('fadein');
    $('#BRBIG').show(300);
    $('#fs').show(300);
 });