If you're in need of a quick, concise tutorial to learn Unix and get on your way, this is it. Sams Teach Yourself UNIX in 10 Minutes, Second Edition will help you quickly and easily learn UNIX essentials and review UNIX features and functions. You will master components of UNIX programming through clear, concise learning modules and step-by-step instructions without having to wade through a lot of fluff and theory. You will learn to:
- Get onto the system and use the command line
- Move about the file system
- Create, move, rename and delete files and directories
- Slice and dice command pipe data
- Use the vi Editor
- Print in the UNIX environment
- And more!
Whatever your expertise level, Sams Teach Yourself UNIX in 10 Minutes will get you up and running with UNIX in no time.
About the Author
Sams Teach Yourself Unix in 10 Minutes About the Author
Robert Shimonski is a well-known networking and security expert consulting out of the Long Island, New York area. Rob has authored over 30 books on information technology that include topics specializing in systems engineering with Unix and Microsoft technologies, as well as networking and security design with Check Point and Cisco technologies.
Rob has also deployed state-of-the-art technology in hundreds of companies worldwidejust recently designing and implementing a global MPLS network spanning hundreds of sites. Rob was fortunate to have been able to keep up with his love for Unix by deploying Linux systems and freeware networking and security tools such as Ethereal, NMIS, and MRTG, to name a few.
Because of Rob's unique blend of Unix- and Linux-related real world experience, Rob has served as a technical editor and author on countless Unix- and Linux- related articles and books. Rob was also the networking and security expert chosen to help develop and design LinuxWorld Magazine. You can view LinuxWorld Magazine at http://www.linuxworld.com. To learn more about Roberts's book projects, please visit him at http://www.rsnetworks.net.
Table of Contents
I. LEARNING THE UNIX ENVIRONMENT: BABY STEPS
1. Getting Started
Practicing with Unix: It Really Does Make You Perfect!
Prepare to Log In
The Login Process
The Logout Process
Working Within the Shell
2. Getting Help
Finding Help in Unix
Using the Unix Man Pages
Even More Help!
Graphical Help (Using KDE)
3. Interfacing with Unix Graphically
Overview of the X Window System
How Many Windows Are There?
X Window System Functionality
X Window System Look and Feel
II. NAVIGATING THE UNIX FILE SYSTEM
4. The File System Explained
File System Design
Navigating the File System
Navigating the File System with the GUI
5. File System Navigation Techniques
Using the find Command
Finding Data with Other Unix Commands
The grep Command
Using the KDE Find Feature
III. FILE SYSTEM UTILITIES
6. Working with the Shell
Working with Files at the Unix Shell Prompt
7. Reading Files
The cat Command
Making Output Readable with Pagers
The tail Command
8. Text Editing
Text Editing with Unix
The vi Editor
The emacs Editor
Desktop Environment Tools: KDE's Built-in Editor
9. Text and File Utilities
The wc Command
The split Command
The diff and patch Commands
Tying It All Together: File Management Skills Test
10. Compression and Archiving Tools
Managing Files in Unix
Managing Your Disk Usage
Compressing Files in Unix
The tar Command
IV. WORKING WITH THE SHELL
11. Managing Processes in Unix
The ps Command
The kill Command
The at and cron Commands
12. Input and Output
13. Regular Expressions
Pattern Matching and Regular Expressions
Using . and
Using  and ^
Using ^ (Again) and $
14. Shell Scripting Fundamentals
Building Unix Shell Script Files
Using while and if
V. ENVIRONMENT CUSTOMIZATION
15. User Utilities
The passwd Command
Using finger and chfn
16. Modifying Your Environment
Using Dot Files
Working with the GUI
VI. NETWORKING AND COMMUNICATIONS
17. Printing with Unix
The lpr Command
The lpq Command
The lprm Command
18. Networking and Security
VII. TIPS AND TRICKS
19. Configuring Permissions in Unix
Unix File and Directory Permissions
Using ls -l
20. Unix Privileged Commands
Appendix A. Learn More About Unix: Reference
Welcome to Sams Teach Yourself Unix in 10 Minutes
Welcome to Sams Teach Yourself Unix in 10 Minutes. If you are new to Unix or just want to learn more about it, you have undoubtedly chosen the perfect companion for your journey. Whatever your reasons were for picking up this book, you will be glad that you did, because it is filled with useful information to help you learn Unix. This book's mission is to ensure that you walk away with a fundamental understanding of Unix, how to navigate and use it, and how to become more productive with it. Another goal of this book is to show you other avenues for gathering information that will help you continue your education beyond the lessons herein.
Because of growing market share from companies such as Red Hat, Sun, IBM, and Novell, it's no wonder that Unix is becoming more and more of a household name. Unix (and Linux, which is Linus Torvald's version of Unix) is now found in most firewall and Web-server-based systems as well as all the way to the desktop for end user productivity and development. Unix has deep roots in the computer industry. First surfacing in universities and the military, it began to grow more and more in use with the massive development and expansion of the Internet. Once Linux was released, the landscape of Unix changed forever. Now, Linux (an easier to use version of the Unix operating system) and Unix are both found almost everywhere you look, and to ignore them is simply impossible.
Some common versions of Unix (called distributions, or distros for short) you may have heard of are Sun Solaris, IBM AIX, FreeBSD, Red Hat Linux, SuSE Linux (also known as Novell SUSE), and SCO ACE. Although these versions of the Unix operating system have differences, they all share the same thing: a basic Unix kernel that can be openly worked on and developed by anyone with the knowledge to do so. In this book, we will focus on the similarities between all versions of Unix so that you can use any one of them and still be productive.
Unix is a very powerful multitasking operating system. Multitasking refers to performing multiple tasks at once; in this context, it more specifically means that a user can run multiple programs simultaneously within one single logon of the system. Unix is also a multiuser operating system. What this means is that many users can simultaneously (and securely) use the same machine. In addition, Unix is open source software, which means that users are free to look at and modify its code. This is not the case with proprietary versions of Unix, but most versions are open source, so unless you are working with a specific vendor that does not allow its version of Unix to be altered, it's safe to assume that most versions (especially Linux versions) can be modified. Another powerful tool to unleash with Unix is the power of coding and scripting. Entire user communities work with and help develop Unix programs, and this is what keeps the system growing, developing, and getting better each and every year. This is not commonly seen with other proprietary operating system platform vendors such as Microsoft. Most of these vendors release closed source systems, which means you cannot freely write code that works blindly with these systems.
There is much more to learn about Unix. You are encouraged to find out more about its history and origins on the Web; this way, we can focus more written pages on teaching you how to use Unix. (At the end of this book, however, there is a reference section that will help you locate additional information on Unix, its history, and where it is going in the future.) So, now that you know that Unix is rapidly growing in use, let's take a second to understand why this book is so important, how this book should be used, how this book is organized, and how you will learn Unix productively.
Versions of Unix
Before we get too involved in this book, there is one thing that needs to be made clear: There are many versions of Unix, also called flavors or distros (short for distributions). In this book, all versions will be referenced as "Unix" unless there is something specific that needs to be said about a certain version or distribution. Since Unix, Linux, and all its cousins are so similar, they are said to be in the same family, but as you know, people in your family don't all look or act the same, do they? Nonetheless, you can think of Unix as a family of sorts, one with a great heritage, many grandparents, and plenty of recorded history to laugh about.
This book (just like the first edition) has been written to be as general as possible and to not favor any one vendor or implementation. This way, you can learn in the least confusing way possible; after all, the more complications you are exposed to while learning, the more your learning progress is hindered. Again, in this book, Unix is Unix unless otherwise noted.
Note - If something in an example doesn't work on your system, don't be alarmedcheck the online manuals or ask other users of your machine. Different versions of Unix sometimes have slightly different versions of commandsit will be worth your time to learn how things work on your system as well as how things work on other distributions of Unix.
Teach Yourself Unix in 10 Minutes
In each 10-minute lesson, you are given a small amount of material to master. In most cases, the material in each lesson builds on that presented in the previous lesson, so although you can jump around between lessons, you will be best served to start the book at the beginning and move through it in order. You can come back and forth as you master each lesson, in case you forget a command or how to do something.
This book is divided into seven parts. Part I, "Learning the Unix Environment: Baby Steps," covers logging in to a Unix (or Linux) system so you can begin to learn Unix. You will learn how to get into Unix (and Linux) so that you can work within it. Part I also shows you the essentials of how to help yourself, which is important when using any new system. Learning how to find and use documentation is one of the keys to survival when it comes to learning Unix. Part II, "Navigating the Unix File System," covers the file system, how to navigate it, and so on. Part III, "File System Utilities," explains how to manipulate and work with files as well as how to use some of the tools that come with the system to edit, archive, and compress files. Part IV, "Working with the Shell," covers working with the shell and how to use scripts. Although you won't become a master of shell scripting overnight, you will start to see how powerful Unix can be if you know how to work with it. Part V, "Environment Customization," covers user utilities as well as how to modify your environment. Part VI, "Networking and Communications," is new to the second edition of this book; you will learn how to print with Unix as well as how to set up basic networking and security. Part VII, "Tips and Tricks," covers advanced topics and some Linux so that you can work within Linux (since it's easier to get and use) and learn Unix in the convenience of your home or anywhere else you may want to put a new Linux- or Unix-based system.
How Do You Use Unix?
Unless you're simply using a Unix machine as a platform for a prepackaged commercial application, most of your interaction with Unix is likely to be textual commands typed at a command-line prompt. Most implementations of Unix do provide a graphical user interface (GUI); however, even when running the GUI, much of what you are likely to do involves typing commands into terminal windows that are available in the GUI. We will be covering both in this book, because some versions of Unix install graphically as well as allow you to initially log in to the system graphically. This being said, it is imperative to learn the fundamentals of both methods if you are to progress past the login portion of this book presented in Part I.
So, are you worried about minimal graphical help? You shouldn't be; that's why you are reading this book! As previously mentioned, you will learn both graphical and textual methods in this book. Dragging and dropping and using a mouse are still options in some Unix systems, but the strength of Unix is at the command line. You will see this as you read through each chapter. You will be introduced to K Desktop Environment (KDE), one particular flavor of such an interface, in this book. KDE was chosen as a representative sample for this book because it is available on a wide range of Unix systems and distributions. KDE is also the default environment for SuSE, which is owned and operated by Novell, one of the best-run and supported versions of Linux available today.
Caution - As tempting as it might seem, you are cautioned not to become entirely dependent on GUI utilities even if you have a GUI product with the sophistication and convenience of KDE. This book focuses on the command line, because the command line is where most of the power lies. The GUI is only something that has gradually been developed to get more users to work with Unix; it bridges the gap between drag-and-drop on Microsoft Windows and the Unix command line. Remembering that the true power lies in the command line is what is going to make you into a Unix expert. For example, there are some commands that you can't do or can't do completely from the GUI; that alone proves that you do lose power when you use the GUI. Try not to get too accustomed to using it, but feel free to use it to help you learn Unix.
Getting More Information
It is impossible to provide in-depth coverage of even a small fraction of Unix commands in a book this size. Instead, you are provided with enough information and knowledge to get you started, allow you to master the fundamentals, get you involved in the Unix system, and to get you to the point where if you need more information, resources, and answers, you will know exactly where to start looking for them. In fact, this book concludes with an appendix with a list of online resources in case you ever need to use them.
Who This Book Is For
This book is for anyone who wants to begin learning Unix or learn beyond the fundamentals. The book's small size is meant to keep your investment in time down to a minimum and to give you the greatest amount of knowledge possible based on the time you contribute to learning.
This book also serves as a handy quick reference to using very common commands, so even as you move beyond the basics, you can still use this book as a desktop reference. The commands presented in this book are universal and can be used on a great many Unix versions, so make sure you refer to this book in the future if you forget a command or how to do something.
Before we begin, I would like to take a second to put your mind at ease. Unix is not simple; it never was, and it never has been. Having worked with Unix in a production environment for years on just about every different version, flavor, and distro, it is easy to see why so many folks hate working with Unix. It's not easy to learn, mostly because it's not intuitive at all. Unix is something that needs to be learned before it can be attempted. In a Windows operating system, being intuitive can get you places; in Unix, it usually will get you nowhere. You simply have to learn the basics from a book like this to be able to start to be productive. Although this isn't true for everyone, it applies to most people I have encountered. After teaching for years and writing a great many books about business and technology, I can easily see why Unix can be intimidating.
This book's goal is to destroy that intimidation; to give you a tool set to work with, and to send you on your way into the world of Unix with a foundation to grow on. So, let's begin to learn how to make Unix work for you, with you, and definitely not against you.
Conventions Used in This Book
This book uses the following conventions:
- Information you type appears in bold monospace type.
- Screen output is shown in monospace.
- Menus and menu options, keys you press, and names of buttons and other screen components with which you might interact appear in bold type.
- The Return key is synonymous with the Enter key.
In addition, this book uses the following sidebars to identify helpful information:
Note - Notes present you with special information that you need to be aware of.
Tip - Tips lead you to shortcuts and solutions that can clear up confusion or save you time.
Caution - Cautions help you avoid common pitfalls.
Note - Plain English explains new terms and definitions.
© Copyright Pearson Education. All rights reserved.
Most Helpful Customer Reviews
Can you really learn unix in 10 minutes? Well, Shimonski gives it a hearty try. Actually, I'm sure the title is tongue in cheek. Absorbing this book will take most readers longer. But only a few hours at the most. He has managed to strip unix down to a core of simple and often used commands. Mastery of which takes you through many common unix situations. If you come from a Microsoft or Mac background, what may strike you about this book is the almost total absence of screen captures. Where'd the GUI go? Culture clash, you might say. The reality is that historically, unix arose before bitmapped consoles. But, even today, as you should hopefully understand from the book, you can be more productive at the command line. Speaking of GUIs, though, Shimonski does briefly explains X Windows, which is the native windowing system of every unix implementation. The deliberate brevity of the book means that he can only touch about each topic. But there's enough to get you usefully started.