2012-02-21 68 views
0

我試圖獲取所有字符串屬性和方法。而不是>「1,2,3,4,5,6」| Get-Member只是出於好奇我試了下面的命令,它給了我String對象的Length屬性。我認爲這會給我錯誤或沒有輸出。任何想法爲什麼這樣做?或者PowerShell如何解釋SELECT命令?PowerShell返回SELECT *上的Length屬性*

PS C:>"1,2,3,4,5,6" | SELECT * 

    Length 
    ----------- 

    11 

回答

6

LengthSystem.String成員,其餘均爲方法的唯一屬性。您可以通過執行看到:

"1,2,3,4,5,6" | Get-Member 

SelectSelect-Object的別名。 Select-Object -Property *表示列出傳入對象的所有屬性和屬性值。

您可以看到System.Stringhere的所有成員,並閱讀了Select-Object cmdlet here

+0

哦!我從未注意到它只有一個屬性。所以這可能是個愚蠢的問題,但是在任何情況下,PS都會在select中包含方法。 – Mitul 2012-02-21 02:12:44

+0

@Mitul Nope'Select-Object'只返回屬性。如果您只選擇傳入對象屬性的子集,它也會返回一個自定義對象。 – 2012-02-21 02:18:44

0

解析文本時很容易。您可以使用PSCX Get-TypeName從普通的PowerShell會話中調試類型問題(可以在ISE窗口中使用斷點)。