Take Control of the Mac Command Line with Terminal
<div><p><b>Learn how to unleash your inner Unix geek!</b></p><p><i>Updated Feb 2, 2016</i></p><p>If you've ever thought you should learn to <b>use the Unix command line</b> that underlies Mac OS X, or felt at sea when typing commands into Terminal, Joe Kissell is here to help! With this 167-page ebook, you'll <b>become comfortable</b> working on the Mac's command line, <b>starting with the fundamentals</b> and adding more <b>advanced topics</b> as your knowledge increases.</p><p>Joe includes <b>50 real-life "recipes"</b> for tasks that are best done from the command line, as well as directions for working with permissions, carrying out grep-based searches, creating shell scripts, and installing Unix software.</p><p><i>"I found answers to many questions in your book, and I enjoyed reading it. I am definitely more confident now in facing the Mac command line. Thank you for the time and art that you spent to create such a clarifying text."</i> <br />--Mona Hosseini, grad student in Genomic Medicine and Statistics at the University of Oxford</p><p>The book begins by teaching you these core concepts:</p><ul><li>The differences between Unix, a command line, a shell, and Terminal</li><li>Exactly how commands, arguments, and flags work</li><li>The basics of Terminal's interface and how to customize it</li></ul><p>Next, it's on to the command line, where you'll learn:</p><ul><li>How to navigate your Mac's file system</li><li>Basic file management: creating, copying, moving, renaming, opening, viewing, and deleting files</li><li>Creating symbolic links</li><li>The types of command-line programs</li><li>How to start and stop a command-line program</li><li>How to edit a text file in nano</li><li>What a profile is, why it's cool, and how to customize yours</li><li>The importance of your PATH and how to change it, if you need to</li><li>How to get help (Joe goes way beyond telling you to read the man pages)</li></ul><p>You'll extend your skills as you discover how to:</p><ul><li>Create basic shell scripts to automate repetitive tasks. </li><li>Make shell scripts that have variables, user input, conditional statements, loops, and math.</li><li>See which programs are running and what system resources they're consuming.</li><li>Quit programs that refuse to quit normally.</li><li>Enable the command line to interact with the Finder.</li><li>Control another Mac via its command line with ssh.</li><li>Understand and change an item's permissions, owner, and group.</li><li>Run commands as the root user using sudo.</li><li>Handle output with pipe (|) or redirect (>).</li><li>Use grep to search for text patterns in files and filter output.</li><li>Install new command-line software from scratch or with a package manager.</li></ul><p>Questions answered include:</p><ul><li>Which shell am I using, and how can I change my default shell?</li><li>How do I quickly figure out the path to an item on my Mac?</li><li>How can I customize my Terminal window so I can see man pages behind it?</li><li>How can I make a shortcut to avoid retyping the same long command?</li><li>Is there a trick for entering a long path quickly?</li><li>What should I say when someone asks if I know how to use vi?</li><li>How do I change my prompt to suit my mood or needs?</li><li>What is Command Line Tools for Xcode?</li><li>When it comes to package managers, which one should I use?</li></ul><p><i>"Very good! A pleasure to read, the right balance of coverage and clarity."</i> <br />--Brian G.</p><p>Finally, to help you put it all together, the book showcases over 50 real-world "recipes" that combine commands to perform useful tasks, such as listing users who've logged in recently, using a separate FileVault password, figuring out why a disk won't eject, copying the source code of a Web page, determining which apps have open connections to the Internet, flushing the DNS cache, finding out why a Mac won't sleep, sending an SMS message, and deleting stubborn items from the Trash.</p></div>