需求:查看Windows某个文件夹所有一级子文件夹大小,并按照从大到小排序

解决方案:使用Powershell脚本

脚本内容如下

function filesize ()

{

 

[string]$filepath =".\"

$sortedlength = @{ }

$sorted = @{ }

if ($filepath -eq $null)

{

throw "路径不能为空"

}

 

dir -Path $filepath |

ForEach-Object -Process {

if ($_.psiscontainer -eq $true)

{

$length = 0

$name=$_.name

dir -Path $_.fullname -Recurse | ForEach-Object{

[long]$length += $_.Length

}

$sortedlength.Add($name,$length)

}

}

 

$sorted=$sortedlength.GetEnumerator() | Sort-Object value -Descending

foreach ($a in $sorted.GetEnumerator())

{

 

if ($a.Value -ge 1GB)

{

$l = $a.Value/1GB

$a.Key + "文件夹的大小为: {0:n1} GB" -f $l

}

 

elseif ($a.Value -ge 1MB)

{

$l = $a.Value/1MB

$a.Key + "文件夹的大小为: {0:n1} MB" -f $l

}

else

{

$l = $a.Value/1KB

$a.Key + "文件夹的大小为: {0:n1} KB" -f $l

}

}

}

filesize | out-file .\文件大小.txt

使用方式

1. 到指定目录新建文本文档,将以上代码保存到文档

2. 将文本文档保存为.ps1格式,编码选择UTF-8 BOM(如果没有BOM选项,选择UTF-8)

3. 右键执行

如遇到报错无法加载文件 XXX.ps1,因为在此系统上禁止运行脚本

需要以管理员身份执行Powershell脚本Set-ExecutionPolicy Bypass,之后再次执行

4. 执行完成后会在当前文件夹创建一个文件大小.txt的文本文档,如图所示

以上

好了,本文就介绍到这里了,感谢您的观看

最新文章

  1. shell统计指定范围内的所有质数以及它们的和
  2. Python基础:新式类的属性访问
  3. 【QTP】自动化测试:
  4. android 定时请求(两种实现方式)
  5. Android含文档server结束(client UI接口异步请求的一部分)三
  6. Java面试07|Redis数据库
  7. 时间序列分析算法【R详解】
  8. HBase MVCC 机制介绍
  9. 关于ML.NET v0.8的发布说明
  10. .Net Cache
  11. SpringMVC常见面试题总结
  12. p151开映射札记
  13. java NIO入门【原】
  14. C#黎明前的黑暗
  15. Callable与Runable接口 submit与execute区别
  16. Fragment问题集
  17. java定时任务的三种方式
  18. 笔记本移动位置,切换网络ip后,虚拟机的mac系统无法联网解决
  19. 算法练习,链表二分最大n个
  20. 记录一下SpringMVC扫描注解包的配置

热门文章

  1. Java 中九种 Map 的遍历方式,你一般用的是哪种呢?
  2. devexpress 中advBandedGridView内容自动换行和调整自适应行高
  3. JAVA-面向对象之对象拷贝
  4. Vue 双向绑定数据已经更新,但是视图更新:
  5. day17 MySQL的安装 & 数据库基本语法——增删改查
  6. 【Java面试指北】Exception Error Throwable 你分得清么?
  7. 详解 Redis 中 big keys 发现和解决
  8. ubuntu1804搭建FTP服务器的方法
  9. 如何使用Java获取货币符号?
  10. 一文带你入木三分地理解字符串KMP算法(next指针解法)