Get-ChildItem "$Folder" *.xlsx -Recurse | ?{-not ($_.PSIsContainer -or (Test-Path "I:\TEMP_Dir_SSN\$_"))} | copy-Item -Destination "I:TEMP_Dir_SSN" | out-null
Get-ChildItem "$Folder" *.xlsx -Recurse | %{
$test = Resolve-Path $_.FullName
$holdArray += $test.path
}
$holdArray | out-file "I:\TEMP_Dir_SSN\fullPath.txt" -append输出:
I:\1992.xlsxI:\projects\confluence\projects\documents\XXXX_ComplianceRegulations.xlsxI:\projects\confluence\projects\documents\XXXX_vendorCloudStandardsPoliciesRegs.xlsx我想要它:
I:\1992.xlsx
I:\projects\confluence\projects\documents\XXXX_ComplianceRegulations.xlsx
I:\projects\confluence\projects\documents\XXXX_vendorCloudStandardsPoliciesRegs.xlsx我不确定这里出了什么问题。它应该将其添加到下一行,而不是附加到字符串的末尾。
发布于 2017-06-21 21:09:27
将$holdArray += $test.path更改为[array]$holdArray += $test.path
您还没有告诉PowerShell这是一个数组,所以它将其视为字符串。
发布于 2017-06-21 21:27:57
您正在将“数组”展平为空格分隔的字符串,因为您最初没有声明$holdArray。跳过数组“构建”逻辑,使用管道来获得您想要的结果。
Get-ChildItem $Folder *.xlsx -Recurse |
Resolve-Path | Convert-Path |
Add-Content "I:\TEMP_Dir_SSN\fullPath.txt"默认情况下,Add-Content会追加。
https://stackoverflow.com/questions/44676960
复制相似问题