# this works:
rm foo
# versus this, which doesn't:
rm foo/

Basically, you need to tell it to delete a file , not delete a directory. I believe the difference between rm and rmdir exists because of differences in the way the C library treats each.

At any rate, the first should work, while the second should complain about foo being a directory.

If it doesn't work as above, then check your permissions. You need write permission to the containing directory to remove files.