Итак, я пытаюсь выяснить, есть ли на сервере общий диск. Пока мне удалось найти этот код Powershell.
Get-WmiObject Win32_LogicalDisk -ComputerName Zetafax -Filter DriveType=3 | Select-Object DeviceID, @{'Name'='Size (GB)'; 'Expression'={[string]::Format('{0:N0}',[math]::truncate($_.size / 1GB))}}, @{'Name'='Freespace (GB)'; 'Expression'={[string]::Format('{0:N0}',[math]::truncate($_.freespace / 1GB))}}
Это даст мне только букву, например C: или D:. Есть ли способ заставить его показывать путь так, как это делает Get-PSDrive на локальном ПК?
Спасибо
решение1
Я могу ошибаться, но поскольку вы ищете информацию об общем ресурсе, не лучше ли будет использовать команду Win32_Share для WmiObject?
Get-WmiObject Win32_Share
Это даст вам имя общего ресурса и путь. Если вам нужна более подробная информация, например, о пространстве и размере, вам нужно будет получить эту информацию с помощью первой команды.
решение2
Вы можете использовать любые команды, включая те, которые вы используете на локальной машине, на удаленной машине, используя:
Удаленное взаимодействие PowerShell
Для этого варианта использования имеются встроенные командлеты.
Get-Command -Name '*smbshare*' |
Format-Table -AutoSize
CommandType Name Version Source
----------- ---- ------- ------
Function Block-SmbShareAccess 2.0.0.0 SmbShare
Function Get-SmbShare 2.0.0.0 SmbShare
Function Get-SmbShareAccess 2.0.0.0 SmbShare
Function Grant-SmbShareAccess 2.0.0.0 SmbShare
Function New-SmbShare 2.0.0.0 SmbShare
Function Remove-SmbShare 2.0.0.0 SmbShare
Function Revoke-SmbShareAccess 2.0.0.0 SmbShare
Function Set-SmbShare 2.0.0.0 SmbShare
Function Unblock-SmbShareAccess 2.0.0.0 SmbShare
# get function / cmdlet details
(Get-Command -Name Get-SmbShare).Parameters
Get-help -Name Get-SmbShare -Full
Get-help -Name Get-SmbShare -Online
Get-help -Name Get-SmbShare -Examples
Get-SmbShare
Name ScopeName Path Description
---- --------- ---- -----------
ADMIN$ * C:\Windows Remote Admin
C$ * C:\ Default share
D$ * D:\ Default share
E$ * E:\ Default share
F$ * F:\ Default share
IPC$ * Remote IPC