Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 管道输入/输出_Powershell_Get Wmiobject - Fatal编程技术网

Powershell 管道输入/输出

Powershell 管道输入/输出,powershell,get-wmiobject,Powershell,Get Wmiobject,我想列出C:drive的文件。首先,我想从逻辑磁盘wmi对象获取设备ID,并列出它 下面的命令返回: Get-WmiObject -class Win32_logicaldisk DeviceID : C: DriveType : 3 ProviderName : FreeSpace : 940371968 Size : 125809192960 VolumeName : Get-WmiObject -class Win32_

我想列出C:drive的文件。首先,我想从逻辑磁盘wmi对象获取设备ID,并列出它

下面的命令返回:

Get-WmiObject -class Win32_logicaldisk


DeviceID     : C:  
DriveType    : 3  
ProviderName :  
FreeSpace    : 940371968  
Size         : 125809192960  
VolumeName   :  
Get-WmiObject -class Win32_logicaldisk | select deviceid | Get-ChildItem -path {$_}
但是这个命令:

Get-WmiObject -class Win32_logicaldisk


DeviceID     : C:  
DriveType    : 3  
ProviderName :  
FreeSpace    : 940371968  
Size         : 125809192960  
VolumeName   :  
Get-WmiObject -class Win32_logicaldisk | select deviceid | Get-ChildItem -path {$_}
给出以下错误:

Get ChildItem:找不到驱动器。名为的驱动器 “@{deviceid=C”不存在。第1行字符:60
+Get-WMIOObject-class Win32_logicaldisk |选择设备ID | Get-ChildItem-path{…
+~~~~~~~~~~~~~~~~~~~~~~~
+CategoryInfo:ObjectNotFound:(@{deviceid=C:String)[Get ChildItem],DriveNotFoundException
+FullyQualifiedErrorId:DriveNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand


Get ChildItem-path接受管道输入,我们如何解决此问题?

您的
选择将返回一个名为DeviceID的属性的对象

使用
-ExpandProperty
获取属性值,然后使用管道:

Get-WmiObject -class Win32_logicaldisk | select -expandproperty deviceid | Get-ChildItem -path {$_}

您的
Select
正在返回一个名为DeviceID的属性的对象

使用
-ExpandProperty
获取属性值,然后使用管道:

Get-WmiObject -class Win32_logicaldisk | select -expandproperty deviceid | Get-ChildItem -path {$_}

您也可以只选择返回的对象中的属性。在本例中,
$\uu0.DeviceID

Get-WmiObject -class Win32_logicaldisk | select deviceid | Get-ChildItem -path {$_.DeviceID}

您也可以只选择返回的对象中的属性。在本例中,
$\uu0.DeviceID

Get-WmiObject -class Win32_logicaldisk | select deviceid | Get-ChildItem -path {$_.DeviceID}