alias - macOS


The alias command in macOS is used to create shortcuts or new names for commands or command sequences. It is primarily utilized to simplify long commands by creating short, memorable aliases. This can effectively streamline workflows, especially when routinely using complex commands or command chains.


The syntax for creating an alias is as follows:

alias name='command'
  • name is the new alias you want to create.
  • command is the command or command sequence that the alias refers to.

To remove an alias:

unalias name


The alias command itself does not have options or flags. However, the complexity arises in the commands encompassed by the alias, which can include various flags and options depending on the original command’s structure.


  1. Creating a simple alias:

    alias ll='ls -l'

    This command creates an alias named ll that executes ls -l, listing files in long format.

  2. Complex command alias:

    alias backup='cp -R ~/Documents/ ~/Backups/DocumentsBackup/'

    This alias, named backup, copies all files from the Documents directory to a backup directory.

  3. Removing an alias:

    unalias backup

    Removes the backup alias.

Common Issues

  • Overriding existing commands: Care should be taken not to name an alias the same as existing system commands unless intentional, as this can alter expected command behaviors.
  • Persistence: Aliases created via the terminal are not persistent across sessions; to make them permanent, one must add them to the ~/.bash_profile or ~/.zshrc, depending on the shell used.


Aliases can be effectively combined with functions and scripts to automate tasks. For example:

alias proj='cd ~/Projects/Current; code .'

This alias switches the directory and opens the contents in Visual Studio Code, demonstrating integration with both navigation and application launch commands.

  • unalias: Used to remove aliases previously defined.
  • echo: Useful for printing out aliases for debugging purposes.
  • source: Can be used to re-read profiles and scripts, activating aliases without needing to restart the terminal.

For further insights, refer to the shell’s manual using man bash or man zsh for detailed aspects of alias usage within different shell environments.