Is it possible to have additional logic inside pipeline without breaking it

This topic contains 1 reply, has 2 voices, and was last updated by  Christian Sandfeld 1 year, 11 months ago.

  • Author
  • #45305



    I have pretty basic powershell one liner to delete big files. I want also to output file size which is being deleted as well as tally up total amount of space being deleted while still maintaining pipeline, is it possible somehow?

    get-childitem d:\ -Recurse | where {$_.Length -gt 10MB}  | Remove-Item -Force -Verbose -whatif 
  • #45307

    Christian Sandfeld

    You can pipe to ForEach-Object and do something like this:

    $TotalSize = 0
    Get-Childitem d:\ -Recurse |
    Where-Object { $_.Length -gt 10MB } |
    ForEach-Object {
        $TotalSize += $_.Length
        $_ | Select-Object -Property Name, Length
        $_ | Remove-Item -Force -Verbose -Whatif

You must be logged in to reply to this topic.