Return - PowerShell


The Return command in PowerShell allows you to prematurely exit a script or function and pass a value back to the caller. Its primary purpose is to terminate the execution of the program, handling data transfer through the return value. It is particularly useful for error handling, conditional execution, and returning results from functions.


Return [expression]
  • [expression]: An optional expression to evaluate and return its value. If omitted, the command returns $null.


There are no specific options or flags associated with the Return command.


Simple Usage:

function Get-Greeting {
    Return "Hello, World!"

Conditional Execution:

$age = 25
if ($age -gt 18) {
    Return "You are an adult."

Error Handling:

try {
    # Attempt to execute some code
catch {
    Return "An error occurred."

Common Issues

Using Return Incorrectly:

  • Return should not be used within script blocks (e.g., { ... }).
  • Ensure Return is properly indented to match the correct scope.


The Return command can be combined with other PowerShell features to enhance its functionality:

  • Pipelines: Use Return to send output to subsequent commands.
  • Functions: Define functions to encapsulate logic and return values using Return.
  • Error Handling: Use Return to propagate errors from functions or scripts.
  • Break: Exits a loop or switch statement.
  • Continue: Skips the remaining code in an iteration of a loop.
  • Throw: Generates a terminating error with a specified message.