官方翻译不当导致的PowerShell运行失败一例

官方翻译不当导致的PowerShell运行失败一例

首先我们运行一下,报错如下,说”状态”这个字段已经存在,这是什么鬼?

官方翻译不当导致的PowerShell运行失败一例

在命令中,用到了一个参数

ConvertFrom-Csv ,它会把数据格式化成csv的样式,也就是默认用”,”分开,但是它也有个要求,那就是不能有相同的列出现。

我们先直接运行一下,不要处理数据,看看到底是咋回事…………

这两个”状态”是什么鬼?

官方翻译不当导致的PowerShell运行失败一例

找一台英文版的机器运行一下,看看到底是咋回事。原来微软把state和status都翻译成了状态。

官方翻译不当导致的PowerShell运行失败一例

这里,state应该是动词,status是名词,另个还是有区别的,但是确实都可以翻译成中文的”状态”。虽然翻译可以用,但是确不符合PowerShell的规矩。这篇文章是2012年写的,今年了,微软都没发现这个问题哎。(我觉得一个翻译成状态,第二个翻译成状况在这里比较合适。)

官方翻译不当导致的PowerShell运行失败一例

官方翻译不当导致的PowerShell运行失败一例

既然已经这样了,我换了个方法在中文环境执行。如下:

也就是加一个参数,给他个副标题。当然用out-file然后import-csv也可以。

1
Driverquery.exe /v /FO CSV |Convertfrom-csv -Header "模块名","显示名称","描述","驱动程序类型","启动模式","状态","状态s","接受停止","接受暂停","分页池(字节)","代码(字节)","BSS(字节)","链接日期","路径","Init(字节)"    |select "模块名","显示名称","描述","驱动程序类型","启动模式","状态","状态s","接受停止"|Out-GridView -title "装逼大师"


看看结果,第一行不是我想要的,不过剩下的内容OK,所以基本还是完成了需求。

官方翻译不当导致的PowerShell运行失败一例


本文转自 九叔 51CTO博客,原文链接:http://blog.51cto.com/jiushu/1731662,如需转载请自行联系原作者