As I venture into the great world of linux, I keep finding subtle differences that are frustrating and maddining. The two that I so far have learned are...

linux (unlike Unix) has no "current dir" default. In Unix, if there's an executable in the current directory (pwd), simply typing the name of that executable invokes it. Not so in linux (at least Ubuntu). There, you have to explicitly tell it to look in the current dir, e.g. ./<exeutable>.

The other one is outlined in the cryptic "grep" post, where the "tic" (the character under the tilde (~) in the upper left hand corner of the keyboard has a different meaning in linux than unix. WTF? I just have to wonder about these differences, like, WHY? It makes the transition from unix to linux, IMHO, unnecessarily difficult. Is there an easy to grasp explanation of these differences?

(Don't get me wrong...I love linux, and I'll put up with this...but this stumps me)