[玩转系统] 如何使用 PowerShell 获取可用磁盘空间 [教程]
作者:精品下载站 日期:2024-12-14 13:06:34 浏览:14 分类:玩电脑
如何使用 PowerShell 获取可用磁盘空间 [教程]
如果您使用 PowerShell 来获取 Windows 计算机上的可用磁盘空间,那么您来对地方了。在本教程中,您将学习如何使用 PowerShell 获取可用磁盘空间并监控磁盘使用情况。
先决条件
本教程假设您使用的是安装了 Windows PowerShell v5.1 的 Windows 10 或更高版本的计算机。 PowerShell 6+ 很可能也能正常工作。还假设您处于 Active Directory 环境中。如果没有,请务必了解 New-CimSession
cmdlet 上的 Credential
属性。
查询CIM
每条Windows系统信息都位于CIM/WMI中。 WMI 数据存储包含数千个 Windows 系统的信息;磁盘和存储信息只是其中之一。
CIM 数据存储区分为各种类。 WMI 将有关磁盘的信息存储在 Win32_LogicalDisk 类中。 Win32_LogicalDisk 类包含磁盘信息,例如磁盘名称、总大小、可用空间等。要使用 PowerShell 查询此类,您必须使用 Get-CimInstance
cmdlet 创建一个 CIM 实例。
仅使用 Get-CimInstance
指定 ClassName
参数是查询类的最简单方法。
Get-CimInstance -ClassName Win32_LogicalDisk
Get-CimInstance
将为找到的每个存储卷返回一个 PowerShell 对象,如下所示。
请注意,Get-CimInstance
返回附加到返回的每个存储卷对象的 FreeSpace
属性。 FreeSpace
属性是您需要使用的。
限制 CIM 输出磁盘名称和可用空间
假设您不需要 Get-CimInstance
返回的所有信息,您现在需要限制查看的内容。假设您只想查看驱动器号名称 (DeviceID
) 和可用空间量 (FreeSpace
)。为此,您可以使用 Select-Object
修剪输出。
Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object -Property DeviceID,FreeSpace
您现在有了一份关于可用磁盘空间的漂亮小报告。
将磁盘空间从字节转换为千兆字节
尽管您现在有一个命令来查找可用磁盘空间,但有些东西看起来不太对劲。您可能会发现 FreeSpace
不是在 GB 中定义的;它实际上是以字节为单位定义的。无论如何,谁需要这种级别的粒度?让我们将字节转换为更易读的千兆字节。
要执行转换,您必须首先将字节除以1GB
。例如,在本例中,您知道 C:
磁盘包含 210155110400
字节的可用磁盘空间。要将字节转换为千兆字节,您可以将该数字除以 1GB
,如下所示。
210155110400 / 1GB
您将看到 C:
驱动器总共 195GB,并且有一些变化。
你越来越近了。您可能正在寻找一个不错的整数,但没有通过转换得到它。没有汗!您需要做最后一件事,即将千兆字节四舍五入到最接近的整数。
将小数“四舍五入”到最接近的整数的最简单方法之一是将它们转换为如下所示的整数。您会看到该数字已四舍五入。此方法比使用 Round()
方法更快。
[int](210155110400 / 1GB)
美化磁盘空间输出
现在您已经知道如何将可用空间字节转换为千兆字节,并将此技术合并到您的脚本中。实现这一目标的最佳方法之一是使用计算属性。计算属性允许您针对属性值运行代码来更改它们。
计算属性允许您将属性值定义为脚本块,它本质上是一个可移植的代码单元。
到目前为止,您的代码仅返回以字节显示的磁盘标签 (DeviceID
) 和可用空间 (FreeSpace
),如下所示。
Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object -Property DeviceID,FreeSpace
现在,仅这一次构建您自己的 FreeSpace
属性,它以 GB 为单位。
Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object -Property DeviceID,@{'Name' = 'FreeSpace (GB)'; Expression= { [int]($_.FreeSpace / 1GB) }}
这样好多了!您现在已经得到了您正在寻找的信息。
奖励:对可用空间进行分组
在上面的示例中,您构建了一个命令来返回每个卷的可用空间。也许您不关心每个卷,而宁愿从计算机上的所有卷中获取总可用磁盘空间。
也许您正在构建一个可以同时处理多台机器的脚本,并且您希望输出如下所示:
ServerName FreeSpace
---------- ---------
SRV1 195
SRV2 45
在这种情况下,您需要对上一示例中返回的所有行进行分组,并使用 Measure-Object
cmdlet 对所有 FreeSpace
行进行求和。此 cmdlet 接受多个对象的输入,读取属性,然后执行某些操作。
Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object -Property DeviceID,@{'Name' = 'FreeSpace (GB)'; Expression= { [int]($_.FreeSpace / 1GB) }} | Measure-Object -Property 'FreeSpace (GB)' -Sum
现在,您可以看到从 Measure-Object
返回的 Sum
属性是 1998,这是该计算机拥有的可用空间总量(以 GB 为单位)。
最后,删除所有不需要的属性并仅返回可用空间总量。
(Get-CimInstance -ClassName Win32_LogicalDisk | Select-Object -Property DeviceID,@{'Name' = 'FreeSpace (GB)'; Expression= { [int]($_.FreeSpace / 1GB) }} | Measure-Object -Property 'FreeSpace (GB)' -Sum).Sum
结论
使用 PowerShell 查找磁盘使用情况和磁盘可用空间只需一行,但您必须首先知道如何创建它!在本教程中,您学习了如何使用 PowerShell 获取可用磁盘空间并根据您的喜好格式化输出。
改进此代码。看看您是否可以构建一个脚本来同时在许多服务器上运行此代码!
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag