在 powershell 中显示计算机名称和可用磁盘 space

Displaying computer name and free disk space in powershell

我是 运行 以下 powershell 命令:

 $cmd = Get-WmiObject -ComputerName Drex -Class Win32_volume |  Where {($_.DriveLetter) -and ($_.FreeSpace)}| ft -auto DriveLetter,FreeSpace 
 $cmd

结果为

DriveLetter    FreeSpace
 -----------    ---------
 D:           39295995904
 C:          297391972352

我需要一个包含计算机名称的附加列
我该怎么做?

您可以使用 calculated property:

$ComputerName = 'Drex'
$Disks = Get-WmiObject -ComputerName $ComputerName -Class Win32_volume |  Where {($_.DriveLetter) -and ($_.FreeSpace)}
$Disks | Select-Object DriveLetter,FreeSpace,@{Label="Computername";Expression={$ComputerName}}

此外,ftFormat-Table 的别名)提供格式化字符串 - 您希望避免将格式化输出存储在变量中 - 等到您想要显示数据后再进行格式化命令

尝试

$cmd = Get-WmiObject -ComputerName Drex -Class Win32_volume |  Where {($_.DriveLetter) -and ($_.FreeSpace)}| ft -auto DriveLetter,FreeSpace, __SERVER

PSComputerName 也可以代替 __SERVER