1 option
The Linux command line : a complete introduction / by William Shotts.
- Format:
- Book
- Author/Creator:
- Shotts, William E., Jr., author.
- Language:
- English
- Subjects (All):
- Linux.
- Scripting languages (Computer science).
- Operating systems (Computers).
- Physical Description:
- 1 online resource (388 pages) : illustrations
- Edition:
- 2nd edition.
- Place of Publication:
- San Francisco, CA : No Starch Press, [2019].
- System Details:
- text file
- Summary:
- The Linux Command Line takes you from your very first terminal keystrokes to writing full programs in Bash, the most popular Linux shell (or command line). Along the way you'll learn the timeless skills handed down by generations of experienced, mouse-shunning gurus: file navigation, environment configuration, command chaining, pattern matching with regular expressions, and more. In addition to that practical knowledge, author William Shotts reveals the philosophy behind these tools and the rich heritage that your desktop Linux machine has inherited from Unix supercomputers of yore. As you make your way through the book's short, easily-digestible chapters, you'll learn how to: •Create and delete files, directories, and symlinks •Administer your system, including networking, package installation, and process management •Use standard input and output, redirection, and pipelines •Edit files with Vi, the world's most popular text editor •Write shell scripts to automate common or boring tasks •Slice and dice text files with cut, paste, grep, patch, and sed Once you overcome your initial ""shell shock,"" you'll find that the command line is a natural and expressive way to communicate with your computer. Just don't be surprised if your mouse starts to gather dust.
- Contents:
- Intro
- Title Page
- Copyright Page
- Dedication
- About the Author
- About the Technical Reviewer
- BRIEF CONTENTS
- CONTENTS IN DETAIL
- ACKNOWLEDGMENTS
- First Edition
- Second Edition
- INTRODUCTION
- Why Use the Command Line?
- What This Book Is About
- Who Should Read This Book
- What's in This Book
- How to Read This Book
- What's New in the Second Edition
- Your Feedback Is Needed!
- PART I: LEARNING THE SHELL
- 1 WHAT IS THE SHELL?
- Terminal Emulators
- Making Your First Keystrokes
- Try Some Simple Commands
- Ending a Terminal Session
- Summing Up
- 2 NAVIGATION
- Understanding the File System Tree
- The Current Working Directory
- Listing the Contents of a Directory
- Changing the Current Working Directory
- 3 EXPLORING THE SYSTEM
- More Fun with ls
- Determining a File's Type with file
- Viewing File Contents with less
- Taking a Guided Tour
- Symbolic Links
- Hard Links
- 4 MANIPULATING FILES AND DIRECTORIES
- Wildcards
- mkdir-Create Directories
- cp-Copy Files and Directories
- mv-Move and Rename Files
- rm-Remove Files and Directories
- ln-Create Links
- Building a Playground
- 5 WORKING WITH COMMANDS
- What Exactly Are Commands?
- Identifying Commands
- Getting a Command's Documentation
- Creating Our Own Commands with alias
- 6 REDIRECTION
- Standard Input, Output, and Error
- Redirecting Standard Output
- Redirecting Standard Error
- Redirecting Standard Input
- Pipelines
- 7 SEEING THE WORLD AS THE SHELL SEES IT
- Expansion
- Quoting
- 8 ADVANCED KEYBOARD TRICKS
- Command Line Editing
- Completion
- Using History
- 9 PERMISSIONS
- Owners, Group Members, and Everybody Else
- Reading, Writing, and Executing
- Changing Identities
- Exercising Our Privileges.
- Changing Your Password
- 10 PROCESSES
- How a Process Works
- Viewing Processes
- Controlling Processes
- Signals
- Shutting Down the System
- More Process-Related Commands
- PART II: CONFIGURATION AND THE ENVIRONMENT
- 11 THE ENVIRONMENT
- What Is Stored in the Environment?
- How Is the Environment Established?
- Modifying the Environment
- 12 A GENTLE INTRODUCTION TO VI
- Why We Should Learn vi
- A Little Background
- Starting and Stopping vi
- Editing Modes
- Moving the Cursor Around
- Basic Editing
- Search-and-Replace
- Editing Multiple Files
- Saving Our Work
- 13 CUSTOMIZING THE PROMPT
- Anatomy of a Prompt
- Trying Some Alternative Prompt Designs
- Adding Color
- Moving the Cursor
- Saving the Prompt
- PART III: COMMON TASKS AND ESSENTIAL TOOLS
- 14 PACKAGE MANAGEMENT
- Packaging Systems
- How a Package System Works
- Common Package Management Tasks
- 15 STORAGE MEDIA
- Mounting and Unmounting Storage Devices
- Creating New File Systems
- Testing and Repairing File Systems
- Moving Data Directly to and from Devices
- Writing CD-ROM Images
- Extra Credit
- 16 NETWORKING
- Examining and Monitoring a Network
- Transporting Files over a Network
- Secure Communication with Remote Hosts
- 17 SEARCHING FOR FILES
- locate-Find Files the Easy Way
- find-Find Files the Hard Way
- 18 ARCHIVING AND BACKUP
- Compressing Files
- Archiving Files
- Synchronizing Files and Directories
- 19 REGULAR EXPRESSIONS
- What Are Regular Expressions?
- grep
- Metacharacters and Literals
- The Any Character
- Anchors
- Bracket Expressions and Character Classes
- POSIX Character Classes
- POSIX Basic vs. Extended Regular Expressions
- Alternation
- Quantifiers.
- Putting Regular Expressions to Work
- 20 TEXT PROCESSING
- Applications of Text
- Revisiting Some Old Friends
- Slicing and Dicing
- Comparing Text
- Editing on the Fly
- 21 FORMATTING OUTPUT
- Simple Formatting Tools
- Document Formatting Systems
- 22 PRINTING
- A Brief History of Printing
- Printing with Linux
- Preparing Files for Printing
- Sending a Print Job to a Printer
- Monitoring and Controlling Print Jobs
- 23 COMPILING PROGRAMS
- What Is Compiling?
- Compiling a C Program
- PART IV: WRITING SHELL SCRIPTS
- 24 WRITING YOUR FIRST SCRIPT
- What Are Shell Scripts?
- How to Write a Shell Script
- More Formatting Tricks
- 25 STARTING A PROJECT
- First Stage: Minimal Document
- Second Stage: Adding a Little Data
- Variables and Constants
- Here Documents
- 26 TOP-DOWN DESIGN
- Shell Functions
- Local Variables
- Keep Scripts Running
- 27 FLOW CONTROL: BRANCHING WITH IF
- if Statements
- Exit Status
- Using test
- A More Modern Version of test
- (( ))-Designed for Integers
- Combining Expressions
- Control Operators: Another Way to Branch
- 28 READING KEYBOARD INPUT
- read-Read Values from Standard Input
- Validating Input
- Menus
- 29 FLOW CONTROL: LOOPING WITH WHILE/UNTIL
- Looping
- Breaking Out of a Loop
- Reading Files with Loops
- 30 TROUBLESHOOTING
- Syntactic Errors
- Logical Errors
- Testing
- Debugging
- 31 FLOW CONTROL: BRANCHING WITH CASE
- The case Command
- 32 POSITIONAL PARAMETERS
- Accessing the Command Line
- Handling Positional Parameters en Masse
- A More Complete Application
- 33 FLOW CONTROL: LOOPING WITH FOR
- for: Traditional Shell Form.
- for: C Language Form
- 34 STRINGS AND NUMBERS
- Parameter Expansion
- Arithmetic Evaluation and Expansion
- bc-An Arbitrary Precision Calculator Language
- 35 ARRAYS
- What Are Arrays?
- Creating an Array
- Assigning Values to an Array
- Accessing Array Elements
- Array Operations
- Associative Arrays
- 36 EXOTICA
- Group Commands and Subshells
- Traps
- Asynchronous Execution with wait
- Named Pipes
- INDEX.
- Notes:
- Description based on print version record.
- Includes index.
- ISBN:
- 9781492071235
- 1492071234
- 9781593279530
- 1593279531
- OCLC:
- 1089342168
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.