Hide progress of Invoke-WebRequest Hide progress of Invoke-WebRequest powershell powershell

Hide progress of Invoke-WebRequest


Use the $progressPreference variable. It should have a value of 'Continue' by default unless you've edited it elsewhere, which tells Powershell to display the progress bar. Since you mentioned that you have your own custom progress displays, I would reset it immediately after the cmdlet is executed. For example:

$ProgressPreference = 'SilentlyContinue'    # Subsequent calls do not display UI.Invoke-WebRequest ...$ProgressPreference = 'Continue'            # Subsequent calls do display UI.Write-Progress ...

More info on preference variables at about_preference_variables. Here's the entry for $ProgressPreference:

$ProgressPreference-------------------Determines how Windows PowerShell responds to progress updates         generated by a script, cmdlet or provider, such as the progress bars        generated by the Write-Progress cmdlet. The Write-Progress cmdlet         creates progress bars that depict the status of a command.        Valid values:          Stop:               Does not display the progress bar. Instead,                                it displays an error message and stops executing.          Inquire:            Does not display the progress bar. Prompts                                for permission to continue. If you reply                                with Y or A, it displays the progress bar.          Continue:           Displays the progress bar and continues with          (Default)             execution.          SilentlyContinue:   Executes the command, but does not display                                the progress bar.