@WAHa_06x36 link is broken.
if you
% ls -al b/
you will see that
b.txt -> a/a.txt
so, that links points to a folder 'a/' inside the folder 'b/'.
you need to do
ln -s ../a/a.txt b/b.txt
relative symbolic link's path should be traced from where the link starts. in your case that's inside the folder 'b/'
@luka Yeah, but why. Why is ln like this. Why does it not create a non-broken link instead of a broken link. Why does it just happily and silently do something useless?