function::register - Linux


The register command is a powerful tool used to manage and interact with user-defined functions in the Linux shell environment. It allows users to create, modify, call, and delete functions, providing flexibility and customization in scripting tasks.




  • -d, –delete: Deletes the specified function.
  • -f, –force: Overwrites an existing function without prompting.
  • -p, –print: Prints the definition of the specified function.
  • -q, –quiet: Suppresses output, except for errors.
  • -n, –number: Specifies a line number to associate with the function definition.


Creating a function

register my_func 'echo Hello World!'

Calling a function


Modifying a function

register -f my_func 'echo $1'

Deleting a function

register -d my_func

Common Issues

  • Function not found: Ensure that the function is defined before calling it.
  • Syntax errors: Check for typos or incorrect syntax in the function definition.
  • Incorrect arguments: Verify that the function is called with the correct number and type of arguments.


register can be combined with other commands for advanced tasks:

  • grep: Filter the output of a function to find specific lines.
  • awk: Perform text processing on the output of a function.
  • sed: Modify the output of a function in-place.

Related Commands

  • declare: Declares variables and functions in the shell.
  • typeset: Sets the type and attributes of variables and functions.
  • help: Provides information about built-in shell commands, including register.