1
當我執行下面的代碼時,假設X:\是一個多級目錄樹,它開始在第二遍時拋出奇怪的錯誤。丟失目錄級別的遞歸powershell目錄對象
例如,讓我們假設X:\具有以下結構
X:\
--1stLevelDir
----2ndLevelDir
--Another1stLevelDir
function recurse{
param([System.IO.FileSystemInfo] $folder)
foreach ($dir in GCI $folder -Directory) {
Write-Output $dir.FullName
recurse $dir
}
}
recurse (get-item 'X:\')
該代碼產生以下輸出
X:\1stLevelDir
X:\1stLevelDir\2ndLevelDir
GCI : Cannot find path 'X:\2ndLevelDir' because it does not exist.
At foreach line
完美謝謝你,這個失去我的FileSystemInfo類型,但我可以沒有它的工作。出於好奇,有沒有一種方便的方法來保持該類型而不進行get-item調用? – Preston
@Preston是的,將'.FullName'放在'gci'調用中,而不是在遞歸調用中。 – TessellatingHeckler