Powershell select-object cmdlet仅获取第一个属性

时间:2013-06-19 16:25:23

标签: powershell

当我使用select-object cmdlet时,它只从提供给它的属性列表中获取第一个属性。例如

Get-ChildItem C:\tmp | Select-Object Name, CreationTime, Length

仅返回Name,而不是CreationTime或Length。如果我把CreationTime放在第一位,我只返回CreationTime而不是其他属性。看起来select语句只处理第一个参数而忽略其余参数。我甚至尝试过使用-property参数,但这对

没有任何帮助

这看起来像一个非常基本的问题,但是我在哪里出错?

我已经确认我有PS 3.0。这是我的命令行的逐字复制/粘贴,因为您只能看到返回的名称而不是长度

PS C:\tmp> $psversiontable

Name                           Value
----                           -----
PSVersion                      3.0
WSManStackVersion              3.0
SerializationVersion           1.1.0.1
CLRVersion                     4.0.30319.18046
BuildVersion                   6.2.9200.16434
PSCompatibleVersions           {1.0, 2.0, 3.0}
PSRemotingProtocolVersion      2.2


PS C:\tmp> Get-ChildItem | select Name,Length

Name
----
dls
gallery_uploads.txt
k.ps1
myscript.ps1
uploads.txt

为什么会发生这种情况的任何想法?我在两台独立的机器上尝试了这个,Windows 8和Windows Server 2008 R2,两者都有相同的结果!

1 个答案:

答案 0 :(得分:2)

为了对这篇文章做出正式回答,Shay Levy的评论很明显,我的屏幕缓冲区大小非常大,这意味着我必须将屏幕向右滚动显示其他列看到它。

谢谢谢伊