I made a symbolic link with the following commmand:

ln -s ../test5

I want to remove it now but my rm fails:

$ rm -Rf test5/
rm: cannot remove `test5/': Not a directory
$ rm test5/
rm: cannot remove directory `test5/': Is a directory
$ rmdir test5/
rmdir: test5/: Not a directory
$rm -r test5/
rm: cannot remove `test5/': Not a directory

$ls -l
 0 lrwxrwxrwx  1 peter peter    8 Jul 20 15:30 test5 -> ../test5/

How can I remove my symbolic link? (Ubuntu 8.10, bash)

  • 5
    TIP: rm -r link/ deletes the content on the target Sep 21 '16 at 9:16

Remove the trailing slash:

With prompt:

$ rm test5

Without prompt:

$ rm -f test5

  • It says permission denied. Jul 4 '15 at 8:24
  • 3
    Without trailing slash. So test5/ is incorrect.
    – pylover
    Aug 7 '16 at 12:38

Try rm test5
(without the training slash).

The slash indicates that 'test5' is a direactory whereas it's actually a file linking to a directory.


You can run removing the trailing slash:

$ rm test5

This will remove the file (i.e. the symlink).

Alternatively you may use unlink:

$ unlink test5

Again you must omit the trailing slash since you are attempting to unlink the symlink not the directory.


Sometimes if you use autocomplete to name the link that you want to delete you may not see a trailing slash but it's 'half there' and that invisible slash still gives the delete error when trying to remove that link.

So in that case type out character by character the link to be deleted as "test5" as eg. rm test5.

  • 1
    Never heard of invisible slash. What shell does this? Feb 14 '18 at 23:30
  • I think it's possibly a reference to the character being hidden by linewrap+cursor?
    – bertieb
    Feb 14 '18 at 23:48

The issue in the OP is the trailing /, so test5/ throws an error but test5 works.

I prefer to use unlink rather than rm as my intention is clearer and there is no chance of mistakenly removing the real directory instead of the link. Make sure that there is no trailing / after the directory name, e.g.:

unlink test5

There seems to be a problem with an empty directory with two symlinks. rmdir won't work in Kubuntu 20.10. It answers "directory not empty". rm says it's a directory.


I feel silly asking, but have you tried rm -r? Since it's a symbolic link it shouldn't delete the target.

Edit: Just tried it, it's correct

Edit 2: rmdir says in its first line of the man page it deletes empty directories. I would think because it's a link it had the directory bit checked on its file properties, but because rmdir doesn't suspect that being the case it spits errors. Just use rm -r

  • 2
    This will ask me to delete the files in the directory, that's not what I want, I want to delete only the link
    – Peter Smit
    Jul 20 '09 at 12:46
  • The asking was because interactive was defined in my .profile. Added the response to rm -r. It still doesn't work.
    – Peter Smit
    Jul 20 '09 at 12:50
  • You left the trailing '/' that's why it failed
    – bobby
    Jul 20 '09 at 12:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.