Windows – PowerShell脚本获取目录的总大小
发布时间:2020-12-13 20:54:30 所属栏目:Windows 来源:网络整理
导读:我需要递归的获取一个目录的大
我需要递归的获取一个目录的大小。我每个月都要这样做,所以我想制作一个
PowerShell脚本来做到这一点。
我该怎么做?
尝试以下
function Get-DirectorySize() { param ([string]$root = $(resolve-path .)) gci -re $root | ?{ -not $_.PSIsContainer } | measure-object -sum -property Length } 这实际上产生了一个摘要对象,其中将包括项数。你可以只是抓住Sum属性,而这将是长度的总和 $sum = (Get-DirectorySize "SomeFilePath").Sum EDIT为什么这样工作? 我们来分解管道的组件。 gci -re $ root命令将从起始$根目录中递归获取所有项目,然后将其推入管道。那么$ root下的每个文件和目录都将通过第二个表达式?{-not $ _。PSIsContainer}。传递给此表达式的每个文件/目录可以通过变量$ _访问。前面的?表示这是一个过滤器表达式,仅保留符合此条件的管道中的值。 PSIsContainer方法将为目录返回true。因此,过滤器表达式只保留文件值。最终的cmdlet measure对象将对流水线中剩余的所有值的总和值进行总和。所以它本质上是为当前目录下的所有文件(递归)调用Fileinfo.Length,并对值进行求和。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- MIT / Scheme是Windows下的一个简单编译器
- windows – 在不知道VID和PID的情况下读取USB HID条形码扫描
- tfs – 在测试用例通过或失败时发送电子邮件警报
- windows – 如何在窗口上设置HICON(.ICO有多种尺寸)?
- windows-xp – GPO禁用Windows XP巡视弹出窗口
- 2018-2019-2 《网络对抗技术》Exp3免杀原理与实践 20165222
- windows-server-2008 – Subversion Edge LDAP(需要CAC证书
- windows-phone-7 – 为什么我从LongListSelector下载时收到
- windows – 如何在用户创建挂载点时收到通知?
- windows phone 7,xna,我如何更经常地对触摸屏进行采样