在目錄中我做Powershell的獲取,項目對象或數組
Get-Item *.txt
當有它返回一個System.IO.FileSystemInfo
目錄內的一個.txt文件,當有更多的.TXT它返回的文件 System.Array
處理這種不一致的最佳方法是什麼?即我如何找出函數是否返回了一個對象或數組。或者更好的是,Get-Item總是返回一個數組嗎?
我想將結果傳遞給其他函數。該函數需要一個System.IO.FileSystemInfo對象的數組。
在目錄中我做Powershell的獲取,項目對象或數組
Get-Item *.txt
當有它返回一個System.IO.FileSystemInfo
目錄內的一個.txt文件,當有更多的.TXT它返回的文件 System.Array
處理這種不一致的最佳方法是什麼?即我如何找出函數是否返回了一個對象或數組。或者更好的是,Get-Item總是返回一個數組嗎?
我想將結果傳遞給其他函數。該函數需要一個System.IO.FileSystemInfo對象的數組。
可以強制數組總是返回:
@(Get-Item *.txt)
ForEach-Object
Get-Item *.txt | ForEach-Object {
# Do stuff
$_ # this represents the "current" object
}
謝謝!這個解決方案也很棒。 – Delis 2014-12-03 17:10:11
的一種方式,以確保結果將始終是一個數組被包裹在@()的表達式:
@(Get-Item *.txt)
這正是我所期待的。 – Delis 2014-12-03 17:13:29