I thought I'll make this thread for all of you out there who have questions but are afraid to ask them. This is your chance!
I'll try my best to answer any questions here, but I hope others in the community will contribute too!
I thought I'll make this thread for all of you out there who have questions but are afraid to ask them. This is your chance!
I'll try my best to answer any questions here, but I hope others in the community will contribute too!
Others have answered well already, I just will say that symlinks work at the filesystem level, but the operating system is specially programmed to work with them. When a program asks the operating system to open a file at a given path, the OS will automatically "reference" the link, meaning it will detect a symlink and jump to the place where the symlink is pointing.
A program may choose to inspect whether a file is a symlink or not. By default, when a program opens a file, it simply allows the operating system to reference the file path for it.
But some apps that work on directories and files together (like "
find
", "tar
", "zip
", or "git
") do need to worry about symlinks, and will check if a path is a symlink before deciding whether to reference it. For example, you can ask the "find
" command to list only symlinks without referencing them:find -type l