In some cases, we may need to identify the maximum length of full file path in a directory such that we can reduce the file name to avoid file length/security policy issues.
PS Script:-
$pathToScan = "C:\temp\File_Length" $outputFilePath = "C:\temp\File_Length\output.txt" $writeOnConsole = $true $outputDir = Split-Path $outputFilePath -Parent if (!(Test-Path $outputDir)) { New-Item $outputDir -ItemType Directory } if ($writeOnConsole) {Write-Host "*************************************"} if ($writeOnConsole) {Write-Host " List of files with file Length :- "} if ($writeOnConsole) {Write-Host "*************************************"} $stream = New-Object System.IO.StreamWriter($outputFilePath, $false) Get-ChildItem -Path $pathToScan -Recurse -Force | Sort-Object {($_.FullName.Length)} -Descending | ForEach-Object { $Path = $_.FullName $len = $_.FullName.Length $strg = "$len : $Path" if ($writeOnConsole) { Write-Host $strg } $stream.WriteLine($strg) } $stream.Close()
Output:-


Hope this would be helpful, thanks for reading !!
For more Powershell related blogs: refer here.