首页 > 系统相关 >Powershell获取当前文件夹内所有一级子文件夹大小

Powershell获取当前文件夹内所有一级子文件夹大小

时间:2023-02-21 17:25:50浏览次数:39  
标签:_. Object Value 获取 文件夹 sorted Powershell

需求:查看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的文本文档,如图所示

 

以上

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

标签:_.,Object,Value,获取,文件夹,sorted,Powershell
From: https://www.cnblogs.com/xunjing2/p/17141710.html

相关文章

  • Flutter帧率监控 | 由浅入深,详解获取帧率的那些事
    前言做线上帧率监控上报时,少不了需要弄明白如何通过代码获取实时帧率的需求,这篇文章通过图解配合Flutter性能调试工具的方式一步步通俗易懂地让你明白获取帧率的基础知识,以......
  • Spring中 ServiceLocatorFactoryBean来获取需要的bean,实现业务解耦
    1.ServiceLocatorFactoryBean的使用ServiceLocatorFactoryBean类似于ApplicationContent,都可以进行获取bean的id进行获取bean实例具体代码实例:1.1定义一个接口,可以......
  • Mysql 获取当前日期前一天(DATE_SUB()函数和DATE_ADD()的用法)
    Mysql获取当前日期前一天DATE_SUB()函数的用法DATE_ADD()函数一、用途:函数调用形式:简单应用业务需要:  这是关于一个报名活动的需求,因为报名开始时间和活动结束时间......
  • 将文件夹打成jar包
    将一个文件夹打包成.jar文件,注意,是一个文件夹:我在e盘下有一个名为gameapi的文件夹,这个文件夹就是我要打包的文件夹,其中在这个文件夹下的META-INF文件夹下有个MANIFEST.MF......
  • 参数获取
    1.get请求在url中通过?指定参数直接将其写在参数上即可获得publicStringaddUser1(Stringusername,Stringpassword){System.out.println("usernameis:"+usernam......
  • python 递归创建文件夹
    os.makedirs(name,mode=0o777,exist_ok=False)作用用来创建多层目录(单层请用os.mkdir)参数说明 name:你想创建的目录名mode:要为目录设置的权限数字模式,默认的模式为......
  • 使用Direct3D获取屏幕内容
    使用CreateCompatibleDC、CreateCompatibleBitmap、BitBlt等函数获取屏幕内容时,会导致屏幕的刷新频率降低,出现屏幕扇动的情况。为避免出现上述问题,可以使用Direct3D提供的......
  • Tomcat下webapps夹中root文件夹作用及如何发布项目至root文件夹中
    转载请注明出处:tomcat的root文件夹下面默认是tomcat的管理程序,但是如果你把自己的web项目发布到root下面的话,你可以不通过项目名直接访问你的项目,比如,你见了一个名......
  • uni-app api:获取网络类型(hbuilderx 3.6.18)
    一,代码:<template><view><button@click="getNetwork">得到网络类型</button></view></template><script>exportdefault{data(){......
  • 在python中将4维数组中获取3维数组的方法
    在python中将4维数组中获取3维数组的方法得到了这个数组,它的大小是(26,16,16,16)。我需要绘制最后3个维度与不同参数的关系图,但我不清楚如何在不造成灾难的情况下切割第一个......