Saturday, September 24, 2005

Unix for Mac OS X Tiger - book released

My book "Unix for Mac OS X" is now out in a new edition, completely revised for OS X 10.4 (Tiger).

This book is a very complete beginner's guide to Unix. The book assumes no prior Unix experience and yet provides more detail than any other beginning Unix book of which I am aware. In my not-so-humble-opinion the book is probably the best beginners guide to Unix on the market.

The book is over 500 pages and provide great detail on the Unix layer of (aka Darwin.)

The book teaches you how to get to the command line, to edit files using a command line editor, to deal with Unix permissions (an entire chapter on that), and so on. I'll post a table of contents in a later posting.

Buying it:


アムロ・レイ said...

I purchased the original edition, published in 2003, but never had the chance to read it until now (busy school works). GREAT GREAT GREAT BK BTW (I'm now reading up to Chapter 9). I wonder if you are willing to answer 2 simple questions here (sorry for being a cheapstake), instead of buying a brand new book of very similar content and find out the answers there. The old edition was geared toward tcsh shell, and as u know, the bash shell is pretty much standard on 10.3+. Instead of switching to tcsh shell to do some of the examples in the old edition, esp. in Chapter 2 and 7, what should I do in order to convert the following tcsh shell commands so that they will be good for the bash shell:

1. (Chapter 2) In "Create s Simple Unix Shell Script/your personal bin directory"

set path = ( $path ~/bin )
echo 'set path = ( $path ~/bin )' >> .tcshrc

and later on, the tcsh command


is used in the section "to create a simple shell script." What are their "bash" equivalents?

2. (Chapter 7) In "Changing You PATH" for the bash or sh, there is No ~/.profile (under 10.3.9). If, for example, I would like to "add a directory to your PATH in bash or sh," what should I replace

vi ~/.profile


P.S. I'm a beginner UNIX learner, that's why the questions are quite "simple" to you...

Matisse Enzer said...

About this:

set path = ( $path ~/bin )
echo 'set path = ( $path ~/bin )' >> .tcshrc

see page 195 of the old edition of the book - you want to do something like this:

export PATH="$PATH:~/bin"
echo 'PATH="$PATH:~/bin"' >> .profile

you do not need 'rehash' in the bash shell.
And you can use .profile even though your account doesn't start off having one.

アムロ・レイ said...

Thanks, Mr. Enzer, for your assistance. You've just saved me a whopping $20!!! [Yes, sir, I'm a cheapstake :) ]

I guess there shouldn't be any "difference" between the old and the new edition from now on (Chapter 9 until the end), am I coorect? I'll continue reading you book, and if I do have any further questions after reading the rest of the chapters, I hope you don't mind me asking you a few more questions again...

Thanks again :)

Matisse Enzer said...

You are welcome.

There are many differences between the old and new versions the old edition covered Mac OS X 10.2, the new one covers 10.4, and many things changed. I'll trust that you will be able to find a copy in your price range :-)