On 09/03/2012 10:20 PM, Bernhard Voelker wrote:
> the question is what rm should remove:
> the symlink or the target?

The convention in POSIX is that if a symlink is
followed by '/', it's dereferenced.  So this does
appear to be a bug in coreutils 'rm'.

I confirmed that the bug does not occur with
Solaris 11 'rm':

$ mkdir d
$ touch d/file
$ ln -s d dl
$ ls -al *
lrwxrwxrwx   1 eggert   faculty        1 Sep  3 22:26 dl -> d

d:
total 16
drwxrwxr-x   2 eggert   faculty      178 Sep  3 22:26 .
drwxrwxr-x   3 eggert   faculty      234 Sep  3 22:26 ..
-rw-rw-r--   1 eggert   faculty        0 Sep  3 22:26 file
$ rm -r dl/
$ ls -al *
lrwxrwxrwx   1 eggert   faculty        1 Sep  3 22:26 dl -> d


Thanks for reminding me about "." and explaining
why the other example is not a bug.




Reply via email to