Il existe un script que j'utilise pour obtenir les informations de niveau de disque indiquées ci-dessous.La sortie est tronquée à l'aide de winrm
disk.ps1:
Get-WmiObject Win32_DiskDrive | % {
$disk = $_
$partitions = "ASSOCIATORS OF " +
"{Win32_DiskDrive.DeviceID='$($disk.DeviceID)'} " +
"WHERE AssocClass = Win32_DiskDriveToDiskPartition"
Get-WmiObject -Query $partitions | % {
$partition = $_
$drives = "ASSOCIATORS OF " +
"{Win32_DiskPartition.DeviceID='$($partition.DeviceID)'} " +
"WHERE AssocClass = Win32_LogicalDiskToPartition"
Get-WmiObject -Query $drives | % {
New-Object -Type PSCustomObject -Property @{
Disk = $disk.SerialNumber
Letter = $_.DeviceID
}
}
}
}
quand je l'exercerai extrait ci-dessus sur la machine des fenêtres elle-même, la sortie est:
Letter Disk ------ ---- H: XXX_46_0_80987_XXXXX_b2fd_47bb_bc36_aaf4f3029a00 L: XXX_46_0_80987_XXXXX_b2fd_47bb_bc36_aaf4f3029a00 Q: XXX_46_0_80987_41a13cd9_b2fd_47bb_bc36_aaf4f3029a00
Maintenant, je suis en train d'exécuter le même script en utilisant pywinrm
.
disk.py:
complete = <string which is equivalent to above script>
winrm_connector = winrm.Session('*.X.X.X', auth=('XXXX','XXXXXX.1'))
response = winrm_connector.run_ps(complete)
print response.std_out
L'exécution de ce que je reçois comme sortie:
Letter Disk ------ ---- H: XXX_46_0_80987_XXXXX_b2fd_47bb_b... L: XXX_46_0_80987_XXXXX_b2fd_47bb_b... Q: XXX_46_0_80987_41a13cd9_b2fd_47bb_b...
S'il vous plaît faire la lumière si WinRM tronque la sortie ou la coquille est tronque la sortie .
Je pense que le shell ne le fait pas parce que lorsque j'ai exécuté le script en utilisant PowerShell, j'ai été en mesure d'obtenir la sortie entière.
J'ai obtenu cela .. mais la table de format doit être la partie de l'exécution du script ou à l'intérieur du script? –
Il s'agit du code PowerShell, il est donc évident qu'il doit faire partie de votre code PowerShell, pas de votre code Python. –
ok !. va essayer ça –