WMIC翻译表

时间:2018-06-01 12:45:44

标签: formatting output wmic

我在哪里可以获得有关WMIC /TRANSLATE切换中使用的转换表的文档?正如我所发现的那样,只有两个表格附带WMICBasicXmlNoComma。如何管理表:列出,查看,添加,删除,重命名?他们有哪种格式?我想,当我使用表时,只有单个字符替换规则。或者其他一些规则可能适用?

1 个答案:

答案 0 :(得分:0)

这些转换表来自MSFT_CliTranslateTableMSFT_CliTranslateTableEntry类。这些文件在C:\Windows\System32\wbem\cli.mof文件中进行了定义(且记录很少)。

…
[Abstract] 
class MSFT_CliTranslateTableEntry
{
  string FromValue;
  string ToValue;
};

class MSFT_CliTranslateTable
{
  [key] string Name;
  MSFT_CliTranslateTableEntry Tbl[];
};
…

示例,使用wmic

==> wmic /NAMESPACE:\\root\cli PATH MSFT_CliTranslateTable get
Name                                                                                     
NoComma                                                                                  
              {}  2    MSFT_CliTranslateTableEntry    MSFT_CliTranslateTableEntry  2  ,  
BasicXml                                                                                 
              {}  2    MSFT_CliTranslateTableEntry    MSFT_CliTranslateTableEntry  2  >  >
              {}  2    MSFT_CliTranslateTableEntry    MSFT_CliTranslateTableEntry  2  &lt;  <

另一个示例,使用wmic

==> wmic /NAMESPACE:\\root\cli PATH MSFT_CliTranslateTable get /Value | findstr "^$ Name __CLASS FromValue ToValue"

Name=NoComma

__CLASS=MSFT_CliTranslateTableEntry
FromValue=,
ToValue=

Name=BasicXml

__CLASS=MSFT_CliTranslateTableEntry
FromValue=&amp;gt;
ToValue=&gt;

__CLASS=MSFT_CliTranslateTableEntry
FromValue=&amp;lt;
ToValue=&lt;

其他示例,使用powershell

PS D:\PShell> 
$comp      = $env:COMPUTERNAME
$namespace = "ROOT\Cli"
$classname = "MSFT_CliTranslateTable"

$instances = Get-WmiObject -Class $classname -ComputerName $comp -Namespace $namespace

$instances |
  ForEach-Object { $_ |
    Select-Object -Property @{N='RELPATH';     E={$_.__RELPATH}}, 
                            @{N='TrTableName'; E={$_.Name}} -ExpandProperty Tbl
  } | Format-Table -Property TrTableName, FromValue, ToValue, __CLASS #, RELPATH

输出

TrTableName FromValue ToValue __CLASS                    
----------- --------- ------- -------                    
NoComma     ,                 MSFT_CliTranslateTableEntry
BasicXml    &gt;      >       MSFT_CliTranslateTableEntry
BasicXml    &lt;      <       MSFT_CliTranslateTableEntry