When you print a file, the file is copied to a "spooling directory." This can be a problem if you want to print a very large file: the copy operation might take a long time, or the act of copying might fill the spooling directory's filesystem.
Systems with the lpr family of commands
provide a workaround for this problem. The -s
option makes a
symbolic link (Section 10.4) to your file from the
spooling directory.
Here's such a command:
% lpr -s directions
Rather than copying directions, lpr creates a symbolic link to directions. The symbolic link is much faster, and you're unlikely to get a "filesystem full" error.
Using a symbolic link has one important side effect. Because the file isn't hidden away in a special spooling directory, you can delete or modify it after you give the lpr command and before the printer is finished with it. This can have interesting side effects; be careful not to do it.
Of course, this warning applies only to the file that actually goes to the
printer. For example, when you format a troff
file (Section 45.16)
for a PostScript printer and then print using -s
, you can
continue to modify the troff file, because
it's the resulting PostScript file that actually goes to the printer (thus the
PostScript file, not the troff file, is
symbolically linked).
— ML