unset – Remove the specified shell variable or function

The unset command is used to remove shell variables or functions that have been previously defined. This command can be used to remove variables that are no longer needed, freeing up system resources.


To remove a shell variable or function using the unset command, simply specify the name of the variable or function as an argument to the command. For example, to remove a variable named myvar, you would use the following command:

unset myvar

If the variable or function does not exist, the unset command will not produce an error message.


Here are some examples of how to use the unset command:

  • To remove a variable named myvar:
    unset myvar
  • To remove a function named myfunc:
    unset -f myfunc
  • To remove all variables and functions:
    unset -v
    unset -f

Specific Use Cases

The unset command can be used in a variety of situations, including:

  • Removing variables or functions that are no longer needed.
  • Clearing the environment of all variables and functions.
  • Resetting the value of a variable to its default value.


Here are the available options for the unset command:

Option Description
-f Removes the specified function.
-v Removes the specified variable.

Troubleshooting Tips

  • If you receive an error message stating that the variable or function does not exist, double-check the spelling of the name.
  • Be careful when using the unset command, as it can permanently remove variables and functions from the shell environment.


  • The unset command does not remove environment variables, only shell variables and functions.
  • The unset command can be used in shell scripts to remove temporary variables or functions.