I like to organize my files in as intuitive and thorough a way as possible. This occasionally requires choosing between two different folders to place them in. For example, if I sort my ebooks by author, and I come across one on which multiple authors have worked, my options with Windows Vista, as far as I knew, were to
a) Make duplicate copies and put one in each author's folder
b) Put the actual ebook in one author's folder and then make a shortcut to the file and put that in the other authors' folders.
The first option seems terribly messy and feels like only a temporary solution. Depending on the filesizes, and the number of duplicates, this could quickly grow unwieldy. The second option is marginally better but it presumes the files will never be moved or copied elsewhere, so again, temporary.
The ideal solution would be able to link to the same file from all the folders. And as I mentioned before, I thought this was impossible in Windows, though observed in other operating systems, like *Nix. However, this is where symlinks come in.
Whereas you were forced to use third-party software to create links in Windows XP, Vista has added command line support but it's just awkward enough to make those external programs still useful. Of the ones around, the most useful seems to be the Link Shell Extension. Note that while LSE works on most Windows flavors, it is made for NTFS drives only.
Linking Files
When linking only a file, you have the option of creating a hardlink or a symlink. Hardlinks allow the file system to treat the created hardlink as the actual file, as if there were two filenames pointing to the same file object. If you copy a hardlink and paste elsewhere, you'll be pasting the actual file. Cutting and pasting will move just the hardlink, and deleting just deletes the hardlink. An important feature to note about hardlinks is that because they're multiple links to the same file on a drive, they are limited to just that drive. Thus, they can't be moved to another drive.
Symlinks will show up on the filesystem as links to the file, but not as the actual file itself. However, as was the case with hardlinks, copying and pasting will create another copy of the actual file and cut-paste will move the symlink itself. Deleting the symlink only has an effect on that symlink.
Linking to folders instead of files requires the use of junctions. Like symlinks, junctions simply link to the same folder. Anything you do, including the deletion of files within the junction, will result in the same action being performed on the files in the source folder.
Hardlink clones create folders with hardlinks pointing to the files in the original folder with the same single volume limitations of hardlinks. Deletion of hardlinks will not affect the original files. Similarly symlink clones create folders with symlinks pointing to the files in the original folder.
Smart copy of folders allows the copying and retaining of hardlinks.
I will play around with these further to see what's the best for sorting.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment