当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell:如何获取文件夹大小(以 GB 为单位)

作者:精品下载站 日期:2024-12-14 04:43:23 浏览:14 分类:玩电脑

PowerShell:如何获取文件夹大小(以 GB 为单位)


您可以在 PowerShell 中使用以下语法来获取特定目录中每个文件夹的大小(以 GB 为单位):

$path = "c:\users\bobbi\onedrive\documents\collecting_wisdom"
$folders = Get-ChildItem -Path $path -Directory -Recurse

$sizes = foreach ($folder in $folders) {
    $size = (Get-ChildItem -Path $folder.FullName -File -Recurse |
             Measure-Object -Property Length -Sum).Sum
    
    [PSCustomObject]@{
    Name = $folder.Name
    Size_GB = [Math]::Round($size / 1GB, 5)
    }
}

$sizes | Format-table

此特定示例将显示我们在 $path 变量中指定的目录中每个文件夹的名称和大小(以 GB 为单位)。

注意:此特定示例将文件大小四舍五入到小数点后 5 位,但您可以在 Round() 中将 5 更改为其他值如果您想四舍五入到不同的数字,请使用strong>函数。

以下示例展示了如何在实践中使用此语法。

示例:如何使用 PowerShell 获取文件夹大小(以 GB 为单位)

假设我们当前目录有以下路径:

C:\Users\bobbi\OneDrive\Documents\collecting_wisdom

我们可以输入 Dir 列出当前目录中的所有文件:

[玩转系统] PowerShell:如何获取文件夹大小(以 GB 为单位)

假设我们想要获取该目录中每个文件夹的大小(以 GB 为单位)。

我们可以使用以下语法来执行此操作:

$path = "c:\users\bobbi\onedrive\documents\collecting_wisdom"
$folders = Get-ChildItem -Path $path -Directory -Recurse

$sizes = foreach ($folder in $folders) {
    $size = (Get-ChildItem -Path $folder.FullName -File -Recurse |
             Measure-Object -Property Length -Sum).Sum
    
    [PSCustomObject]@{
    Name = $folder.Name
    Size_GB = [Math]::Round($size / 1GB, 5)
    }
}

$sizes | Format-table

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] PowerShell:如何获取文件夹大小(以 GB 为单位)

输出显示目录中每个文件夹的名称以及文件夹大小(以 GB 为单位):

  • 计量经济学:0.00235 GB
  • 环境统计: 0.00048 GB
  • 时间序列分析:0.00033 GB

注意:如果您想以 MB 为单位显示文件夹大小,则只需在 Round() 方法中除以 1MB 即可。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯