You can't "learn UNIX" because the competent handling of the operating system consists of several only loosely connected separate topics: shell and shell programming, understanding of how a kernel works, understanding of filesystems, networking basics, etc..
For most of these topics there are specialized books which will cover the subjects more deeply than you will need to know to get started. There are books which deal only with shell programming, books about (IP) networking, etc.. On the other hand there are "cross section"-books which will skin the cream of every topic. Have a look in the FAQ section, we have an extensive list of book recommendations
here.
To minimize culture shock a few words about the differences between Windows and Unix. Be aware that i paint with a broad brush here to emphasize on the differences:
- separation of function and presentation
In Windows a function and its representation are oftenly inextricably interwoven. For instance: If you want to create a user you simply *have* to use the user manager program and outside of the program it is hard to find the place where these data are stored. The function (user management) and the presentation (presentation of the user data) are put into some program. In Unix there is a set of files doing the same thing and how you change them is completely up to you. You could use some graphical tool to create/handle the entries in these files but you could even do it with a simple text editor (this is where Unix got its reputation for being awkwardly text-oriented). As long as a program is able to manipulate the files in the correct way you can use it to administrate users.
- binary compatibility versus source compatibility
Windows runs on a single platform and on a single processor architecture: the Intel x86. This means that the software is *binary* compatible: you can copy a program from one machine to another and it will run (legal issues aside). Unix runs on a great variety of hardware platforms and there is a point in calling Unix not so much an OS than an philosophy in OS design. Many Unixes don't "look like" each other but on some level they still work the same way. (I know this is kind of vague, but its hard to describe in a paragraph - once you know Unix you will know what i mean.) Compatibility in Unix means: if you have written a software and it compiles and runs on one system you could copy the source code, compile it on another system and the compiler output should run there - well, to be honest, that is the theory, not the practice. It also means that Unixes from different vendors differ in the things which are related to the management of the hardware. For instance: All Unixes have the same files and commands when dealing with IP networking, like name resolution, routing, interface configuration, etc. But when it comes to manage a NIC and create an interface device from it every Unix will be different.
Anyways, you will find that learning Unix is a great way to understand how operating systems in general work. Enjoy.
I hope this helps.
bakunin