Example: To concatenate all .txt files in directory C:\temp and store result in outfile.txt
$ToNatural = { [regex]::Replace($_, '\d+', { $args[0].Value.PadLeft(20) }) }
if (Test-Path "C:\temp\outfile.txt") {
Remove-Item "C:\temp\outfile.txt"
}
Get-ChildItem "C:\temp" -Filter *.txt|sort-object $ToNatural | `
Foreach-Object{
Write-Host $_
#Get-Content $_ >> C:\temp\outfile.txt
}