\b \cw{subdir2/subsubdir/file3}, with link text
\cq{../../subdir/file3}.
-\b \cw{subdir3/subsubdir/file4}, with link text \cq{../file4}.
+\b \cw{subdir2/subsubdir/file4}, with link text \cq{../file4}.
Note that in each case \cw{lns} has constructed the \e{shortest}
relative link it could manage: it did not mindlessly create the
-fourth link with text \cq{../../subdir/file4}.
+fourth link with text \cq{../../subdir2/file4}.
You can specify a target file name instead of a target directory.
For example, the following command has the same effect as the first
simple to begin with:
\c $ lns subdir2 subdir3
-\c bbbbbbbbbbbbbbbbbbb
+\e bbbbbbbbbbbbbbbbbbb
This creates a symlink called \cw{subdir3} with text \cq{subdir2}.
\cw{subdir} instead of \cw{subdir2}. If I do this:
\c $ lns -f subdir subdir3
-\c bbbbbbbbbbbbbbbbbbbbb
+\e bbbbbbbbbbbbbbbbbbbbb
then \cw{lns} will immediately notice that the second argument
\cw{subdir3} is (a symlink to) a directory, and will therefore
\cw{-F} option:
\c $ lns -F subdir subdir3
-\c bbbbbbbbbbbbbbbbbbbbb
+\e bbbbbbbbbbbbbbbbbbbbb
\cw{-F} tells \cw{lns} that you really want the new symlink to be
\e{called} \cw{subdir3}, not to be \e{in the directory}