In Mac OS X, you have two choices when you want to have a file that has a link to an exisiting file: alias (Command L), and symbolic link (Shift-Command L).
Command line tools can understand a symbolic link, not an alias. For GUI tools, e.g., PathFinder, both an alias and symbolic link will work. Automator, however, works only with alias. It’s understandable because link is a legacy from UNIX; so is command line tools. Likewise Automator is a legacy from Mac; so is an alias.
You’ll notice that alias link is larger, which means has more information. An alias has two pieces of information: UID of the file that it links to, and the physical path and file name that it links to. As a result alias will understand the changes you make to the original file.
A symbolic link doesn’t contain the UID. As a result symbolic link will be shown as broken when you change the name of the file that it links to.
Demo
- Using “command-L”, I create an Alias.
- Rename the progress directory as “progress_update”.
- Click the “progress_update” to check Path Finder finds the linked directory correctly.
And this is an example for symbolic link.
- Using “Shift-Command-L”, I create a symbolic link.
- Change directory name.
- Check Path Finder finds the link OK.
For the command line tools, the alias is just a file (color in black), however the symbolic link is recognizable (color in pink).
And you can use command line tools for the change.
In short
- Use symbolic link when you want to use command line tools, for example when you want to use Linux to login your mac account.
- Use alias when you work with your mac, as it will understand your changes.
References