SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This PDF will be accessible from your Account page after purchase and requires PDF reading software, such as Acrobat® Reader®.
The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
The Most Useful UNIX Guide for Mac OS X Users Ever, with Hundreds of High-Quality Examples!
Beneath Mac OS® X's stunning graphical user interface (GUI) is the most powerful operating system ever created: UNIX®. With unmatched clarity and insight, this book explains UNIX for the Mac OS X user—giving you total control over your system, so you can get more done, faster. Building on Mark Sobell's highly praised A Practical Guide to the UNIX System, it delivers comprehensive guidance on the UNIX command line tools every user, administrator, and developer needs to master–together with the world's best day-to-day UNIX reference.
This book is packed with hundreds of high-quality examples. From networking and system utilities to shells and programming, this is UNIX from the ground up—both the "whys" and the "hows"—for every Mac user. You'll understand the relationships between GUI tools and their command line counterparts. Need instant answers? Don't bother with confusing online "manual pages": rely on this book's example-rich, quick-access, 236-page command reference!
Don't settle for just any UNIX guidebook. Get one focused on your specific needs as a Mac user!
A Practical Guide to UNIX® for Mac OS® X Users is the most useful, comprehensive UNIX tutorial and reference for Mac OS X and is the only book that delivers
The GNU-Linux Connection 2
The Heritage of Linux: UNIX 5
What Is So Good About Linux? 6
Overview of Linux 10
Additional Features of Linux 15
Chapter Summary 16
Exercises 17
Conventions Used in This Book 22
Logging In 24
Working with the Shell 25
Curbing Your Power: Superuser Access 28
Getting the Facts: Where to Find Documentation 29
More About Logging In 35
Chapter Summary 38
Exercises 39
Advanced Exercises 39
Special Characters 42
Basic Utilities 43
Working with Files 45
| (Pipe): Communicates Between Processes 52
Four More Utilities 53
Compressing and Archiving Files 56
Locating Commands 61
Obtaining User and System Information 63
Communicating with Other Users 67
Email 69
Chapter Summary 69
Exercises 72
Advanced Exercises 73
The Hierarchical Filesystem 76
Directory and Ordinary Files 77
Working with Directories 88
Access Permissions 91
Links 96
Chapter Summary 102
Exercises 103
Advanced Exercises 105
The Command Line 108
Standard Input and Standard Output 113
Running a Program in the Background 125
Filename Generation/Pathname Expansion 127
Builtins 132
Chapter Summary 133
Exercises 134
Advanced Exercises 136
History 140
Tutorial: Creating and Editing a File with vim 141
The compatible Parameter 148
Introduction to vim Features 148
Command Mode: Moving the Cursor 154
Input Mode 158
Command Mode: Deleting and Changing Text 160
Searching and Substituting 164
Miscellaneous Commands 170
Yank, Put, and Delete Commands 171
Reading and Writing Files 174
Setting Parameters 175
Advanced Editing Techniques 180
Units of Measure 184
Chapter Summary 188
Exercises 193
Advanced Exercises 194
History 196
Tutorial: Getting Started with emacs 198
Basic Editing Commands 204
Online Help 209
Advanced Editing 212
Language-Sensitive Editing 225
Customizing emacs 235
More Information 240
Chapter Summary 241
Exercises 248
Advanced Exercises 250
Background 256
Shell Basics 257
Parameters and Variables 277
Processes 292
History 295
Aliases 312
Functions 315
Controlling bash Features and Options 318
Processing the Command Line 322
Chapter Summary 332
Exercises 334
Advanced Exercises 336
Shell Scripts 340
Entering and Leaving the TC Shell 341
Features Common to the Bourne Again and TC Shells 343
Redirecting Standard Error 349
Working with the Command Line 350
Variables 355
Control Structures 368
Builtins 377
Chapter Summary 381
Exercises 382
Advanced Exercises 384
Programming in C 388
Using Shared Libraries 396
make: Keeps a Set of Programs Current 399
Debugging C Programs 407
Threads 417
System Calls 417
Source Code Management 420
Chapter Summary 430
Exercises 431
Advanced Exercises 432
Control Structures 436
File Descriptors 470
Parameters and Variables 474
Builtin Commands 487
Expressions 501
Shell Programs 510
Chapter Summary 520
Exercises 522
Advanced Exercises 524
Syntax 528
Arguments 528
Options 529
Notes 529
Language Basics 530
Examples 537
Advanced gawk Programming 554
Error Messages 559
Chapter Summary 560
Exercises 561
Advanced Exercises 561
Syntax 564
Arguments 564
Options 564
Editor Basics 565
Examples 568
Chapter Summary 578
Exercises 579
Standard Multiplicative Suffixes 586
Common Options 587
The sample Utility 587
sample: Very brief description of what the utility does 588
aspell: Checks a file for spelling errors 589
at: Executes commands at a specified time 593
bzip2: Compresses or decompresses files 596
cal: Displays a calendar 598
cat: Joins and displays files 599
cd: Changes to another working directory 601
chgrp: Changes the group associated with a file 603
chmod: Changes the access mode (permissions) of a file 604
chown: Changes the owner of a file and/or the group the file is associated with 608
cmp: Compares two files 610
comm: Compares sorted files 612
configure: Configures source code automatically 614
cp: Copies files 616
cpio: Creates an archive or restores files from an archive 619
crontab: Maintains crontab files 624
cut: Selects characters or fields from input lines 627
date: Displays or sets the system time and date 630
dd: Converts and copies a file 633
df: Displays disk space usage 636
diff: Displays the differences between two files 638
du: Displays information on disk usage by file 644
echo: Displays a message 647
expr: Evaluates an expression 649
file: Displays the classification of a file 653
find: Finds files based on criteria 655
finger: Displays information about users 661
fmt: Formats text very simply 664
fsck: Checks and repairs a filesystem 666
ftp: Transfers files over a network 671
gcc: Compiles C and C++ programs 678
grep: Searches for a pattern in files 683
gzip: Compresses or decompresses files 688
head: Displays the beginning of a file 691
kill: Terminates a process by PID 693
killall: Terminates a process by name 695
less: Displays text files, one screen at a time 697
ln: Makes a link to a file 702
lpr: Sends files to printers 705
ls: Displays information about one or more files 708
make: Keeps a set of programs current 715
man: Displays documentation for commands 721
mkdir: Creates a directory 724
mkfs: Creates a filesystem on a device 725
Mtools: Uses DOS-style commands on files and directories 728
mv: Renames or moves a file 732
nice: Changes the priority of a command 734
nohup: Runs a command that keeps running after you log out 736
od: Dumps the contents of a file 737
paste: Joins corresponding lines from files 742
pr: Paginates files for printing 744
ps: Displays process status 746
rcp: Copies one or more files to or from a remote system 750
rlogin: Logs in on a remote system 752
rm: Removes a file (deletes a link) 753
rmdir: Removes a directory 755
rsh: Executes commands on a remote system 756
scp: Securely copies one or more files to or from a remote system 758
sleep: Creates a process that sleeps for a specified interval 760
sort: Sorts and/or merges files 762
split: Divides a file in into sections 771
ssh: Securely executes commands on a remote system 773
strings: Displays strings of printable characters 777
stty: Displays or sets terminal parameters 778
tail: Displays the last part (tail) of a file 783
tar: Stores or retrieves files to/from an archive file 786
tee: Copies standard input to standard output and one or more files 791
telnet: Connects to a remote system over a network 792
test: Evaluates an expression 794
top: Dynamically displays process status 798
touch: Changes a file's access and/or modification time 801
tr: Replaces specified characters 804
tty: Displays the terminal pathname 807
tune2fs: Changes parameters on an ext2 or ext3 filesystem 808
umask: Establishes the file-creation permissions mask 810
uniq: Displays unique lines 812
w: Displays information about system users 814
wc: Displays the number of lines, words, and bytes 816
which: Shows where in PATH a command is located 817
who: Displays information about logged-in users 819
xargs: Converts standard input into command lines 821
Characters 828
Delimiters 828
Simple Strings 828
Special Characters 828
Rules 831
Bracketing Expressions 832
The Replacement String 833
Extended Regular Expressions 834
Appendix Summary 835
Solving a Problem 838
Finding Linux-Related Information 839
Specifying a Terminal 844
yum: Updates and Installs Packages 848
Apt: An Alternative to yum 850
BitTorrent 855