Предположим, что следующий вывод Get-Disk
:
PS C:\own\powershell> Get-Disk
Number Friendly Name Serial Number HealthStatus OperationalStatus Total Size Partition
Style
------ ------------- ------------- ------------ ----------------- ---------- ----------
0 Crucial_CT... (removed) Healthy Online 931.51 GB MBR
1 Crucial_CT... (removed) Healthy Online 1.86 TB MBR
9 LaCie Rugg... (removed) Healthy Online 1.82 TB GPT
Поскольку я хочу отобразить дополнительный столбец спереди, я попробовал следующее:
PS C:\own\powershell> Get-Disk | ft BusType, FriendlyName, SerialNumber, HealthStatus, OperationalStatus, TotalSize, PartitionStyle
BusType FriendlyName SerialNumber HealthStatus OperationalStatus TotalSize PartitionStyle
------- ------------ ------------ ------------ ----------------- --------- --------------
SATA Crucial_CT1024MX200SSD1 (removed) Healthy Online MBR
SATA Crucial_CT2050MX300SSD1 (removed) Healthy Online MBR
USB LaCie Rugged USB-C (removed) Healthy Online GPT
Однако, естьнекоторые тонкие моменты, я не понимаю:
- Самый важный: столбец TotalSize пуст.Если я просто использую
Size
вместо TotalSize
, размер отображается в байтах, но не в удобочитаемом формате, например, «1,86 ТБ».Это почему?Как это работает автоматически, когда я просто набираю Get-Disk
? - В первом выводе столбец называется «Friendly Name» (с пробелом).Когда я указываю
"Friendly Name"
для ft
, это не будет работать.Когда я использую FriendlyName
, это работает - но, очевидно, заголовок будет показан без пробелов.Как это работает автоматически для простого Get-Disk
? - В первом примере выходные данные используют ширину вида, но не во втором.(Несмотря на то, что в
Format-Table
документах указано, что «По умолчанию размер и номер столбца определяются представлением.» См. Параметр -Autosize
в https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/format-table?view=powershell-6)
ИИ последний вопрос: как я могу получить нужный вывод (с дополнительным столбцом И размером диска в удобочитаемом формате)?
Я уже проверил файлы .ps1xml
в C:\Windows\System32\WindowsPowerShell\v1.0
, но не смог найти записьдля вывода Get-Disk
.