您的位置:首页 > 运维架构 > Shell

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

2016-01-05 12:22 441 查看
今天我在PowerShell.com看到一篇文章,是关于Gridview的应用,觉得挺好,决定自己尝试一下。但是实际操作的时候却失败了,然后开始了漫长的排错。http://powershell.com/cs/blogs/tips/archive/2012/01/13/create-own-driver-tool.aspx

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

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

ConvertFrom-Csv ,它会把数据格式化成csv的样式,也就是默认用”,”分开,但是它也有个要求,那就是不能有相同的列出现。
我们先直接运行一下,不要处理数据,看看到底是咋回事…………
这两个”状态”是什么鬼?


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

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



既然已经这样了,我换了个方法在中文环境执行。如下:也就是加一个参数,给他个副标题。当然用out-file然后import-csv也可以。
Driverquery.exe /v /FO CSV |Convertfrom-csv -Header "模块名","显示名称","描述","驱动程序类型","启动模式","状态","状态s","接受停止","接受暂停","分页池(字节)","代码(字节)","BSS(字节)","链接日期","路径","Init(字节)"    |select "模块名","显示名称","描述","驱动程序类型","启动模式","状态","状态s","接受停止"|Out-GridView -title "装逼大师"

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

微软云方案高端顶级群【236804566】分享成就牛B之路

欢迎关注新浪微博 @肥九叔
《微软System Center 2012 R2私有云部署实战》现已上市

本文出自 “九叔-微软私有云” 博客,请务必保留此出处http://jiushu.blog.51cto.com/972756/1731662
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: