查看/查找服务器上的所有压缩文件?

我需要find所有压缩的文件/文件夹,而不pipeWindows Server 2003机器上的文件格式。 search选项不提供此function。

有没有办法列出/查看所有压缩文件?

也许,这可以通过PowerShell使用文件/文件夹属性完成,并将其放入一个文件位置的txt文件。

UPD:

在压缩文件/文件夹下 – 我的意思是在更改文件/文件夹属性后,在资源pipe理器中以蓝色显示的文件。

在这里输入图像说明

压缩的指标存储在“属性”属性中。 这个PowerShell会报告压缩文件。

gci -r C:\search\path | where {$_.attributes -match "compressed"} | foreach { $_.fullname } 

– 开始编辑

文件大小存储在length属性中,以字节为单位。 您可以使用称为“计算属性”的东西来显示kb,mb,gb等的大小

 $col1 = @{label="Size";Expression={$_.length/1mb};FormatString="0.0";alignment="right"} $col2 = @{label="Fullname";Expression={$_.fullname};alignment="left"} gci -r | where {$_.attributes -match "compressed"} | ft $col1,$col2 -autosize 

如果你只想要更大的文件,比如说大于1MB

 gci -r | where {$_.attributes -match "compressed" -AND $_.length -gt 1mb} | ft $col1,$col2 -autosize 

文件夹大小也是可能的,一个稍微不同的野兽。 只要尝试谷歌“PowerShell文件夹大小”很多职位上如何做到这一点。 还有许多免费的工具(windirstat)来报告文件夹的大小。

这个定义比较模糊,因为“压缩文件”可能意味着很多文件。 你有正常的.zip .tar .7z等。你也有.cab文件,虽然我不确定他们现在有多普遍。

AFAIK,没有简单的方法来find压缩文件本身。 您只需简单地定义要查找的文件types并使用DOS命令目录。

在根提示types

 dir *.zip *.rar *.7z *.tar /s >> output_file.txt 

这将列出所有子目录中的所有文件types,并将输出存储在文件output_file.txt中。 然后,你可以通过“日志”,并寻找你想要的。

有关DIR – http://www.computerhope.com/dirhlp.htm的更多深入信息