Файл форматирования двоичного командлета

Я разрабатываю свой первый двоичный модуль PowerShell с использованием C#. Командлет является базовым, он подключается к нашим производственным серверам и отображает состояние служб.

Я хотел бы вывести MachineName свойство вместе со значением по умолчанию Status, Name а также DisplayName свойства. (Я могу сделать Get-AppService | select MachineName,Status,Name чтобы сделать это.)

Я читал об использовании .format.ps1xml файл, который я написал:

<?xml version="1.0" encoding="utf-8" ?>
<Configuration>
  <ViewDefinitions>
    <View>
      <Name>service</Name>
      <ViewSelectedBy>
        <TypeName>System.ServiceProcess.ServiceController</TypeName>
      </ViewSelectedBy>
      <TableControl>
        <TableHeaders>
          <TableColumnHeader>
            <Width>20</Width>
          </TableColumnHeader>
          <TableColumnHeader>
            <Width>8</Width>
          </TableColumnHeader>
          <TableColumnHeader>
            <Width>18</Width>
          </TableColumnHeader>
          <TableColumnHeader>
            <Width>38</Width>
          </TableColumnHeader>
        </TableHeaders>
        <TableRowEntries>
          <TableRowEntry>
            <TableColumnItems>
              <TableColumnItem>
                <PropertyName>MachineName</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Status</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>Name</PropertyName>
              </TableColumnItem>
              <TableColumnItem>
                <PropertyName>DisplayName</PropertyName>
              </TableColumnItem>
            </TableColumnItems>
          </TableRowEntry>
        </TableRowEntries>
      </TableControl>
    </View>
  </ViewDefinitions>
</Configuration>

Я не знаю, где это сделать, чтобы это относилось только к моему командлету. Щас пользуюсь Import-Module вытащить мою DLL из папки bin\Debug Visual Studio.

1 ответ

Решение

Вы можете использовать Update-FormatData и указать его в своем файле.format.ps1xml. Ссылка на TechNet

Обновление: в этом ответе он объясняет, как запустить скрипт, когда ваш модуль C# загружен.

Другие вопросы по тегам