PowerShell Get-ChildItem - Path Too Long

There are 2 other solutions for this

As of Windows 10 / Windows server 2016 (Build 1607 or newer) you can use to remove

Set-ItemProperty 'HKLM:\System\CurrentControlSet\Control\FileSystem' -Name LongPathsEnabled' -value 1

If you are using PowerShell 5.1 or above you can use

get-childitem -LiteralPath

So in this case you would define $Source = "\\?\C:\Users\User1" and replace Get-ChildItem -Path "$Source\*.*" -Recurse -Force with Get-ChildItem -LiteralPath "$Source\*.*" -Recurse -Force