وبلاگ بلیان

خط فرمان لینوکس

The Linux Command Line

معرفی کتاب «خط فرمان لینوکس» (با عنوان لاتین The Linux Command Line) نوشتهٔ William Shotts، منتشرشده توسط نشر A LinuxCommand.org Book در سال 2019. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

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 Prerequisites What's New in the Fifth Internet Edition Acknowledgments First Internet Edition Second Internet Edition Third Internet Edition Fourth Internet Edition Fifth Internet Edition Your Feedback Is Needed! Further Reading Colophon Part 1 – Learning the Shell 1 – What Is the Shell? Terminal Emulators Making Your First Keystrokes Command History Cursor Movement Try Some Simple Commands Ending a Terminal Session Summing Up Further Reading 2 – Navigation Understanding the File System Tree The Current Working Directory Listing the Contents of a Directory Changing the Current Working Directory Absolute Pathnames Relative Pathnames Some Helpful Shortcuts Summing Up 3 – Exploring the System Having More Fun with ls Options and Arguments A Longer Look at Long Format Determining a File's Type with file Viewing File Contents with less Taking a Guided Tour Symbolic Links Hard Links Summing Up Further Reading 4 – Manipulating Files and Directories Wildcards mkdir – Create Directories cp – Copy Files and Directories Useful Options and Examples mv – Move and Rename Files Useful Options and Examples rm – Remove Files and Directories Useful Options and Examples ln – Create Links Hard Links Symbolic Links Let's Build a Playground Creating Directories Copying Files Moving and Renaming Files Creating Hard Links Creating Symbolic Links Removing Files and Directories Summing Up Further Reading 5 – Working with Commands What Exactly Are Commands? Identifying Commands type – Display a Command's Type which – Display an Executable's Location Getting a Command's Documentation help – Get Help for Shell Builtins --help – Display Usage Information man – Display a Program's Manual Page apropos – Display Appropriate Commands whatis – Display One-line Manual Page Descriptions info – Display a Program's Info Entry README and Other Program Documentation Files Creating Our Own Commands with alias Summing Up Further Reading 6 – Redirection Standard Input, Output, and Error Redirecting Standard Output Redirecting Standard Error Redirecting Standard Output and Standard Error to One File Disposing of Unwanted Output Redirecting Standard Input cat – Concatenate Files Pipelines Filters uniq - Report or Omit Repeated Lines wc – Print Line, Word, and Byte Counts grep – Print Lines Matching a Pattern head / tail – Print First / Last Part of Files tee – Read from Stdin and Output to Stdout and Files Summing Up 7 – Seeing the World as the Shell Sees It Expansion Pathname Expansion Tilde Expansion Arithmetic Expansion Brace Expansion Parameter Expansion Command Substitution Quoting Double Quotes Single Quotes Escaping Characters Summing Up Further Reading 8 – Advanced Keyboard Tricks Command Line Editing Cursor Movement Modifying Text Cutting and Pasting (Killing and Yanking) Text Completion Using History Searching History History Expansion Summing Up Further Reading 9 – Permissions Owners, Group Members, and Everybody Else Reading, Writing, and Executing chmod – Change File Mode Setting File Mode with the GUI umask – Set Default Permissions Changing Identities su – Run a Shell with Substitute User and Group IDs sudo – Execute a Command as Another User chown – Change File Owner and Group chgrp – Change Group Ownership Exercising Our Privileges Changing Your Password Summing Up Further Reading 10 – Processes How a Process Works Viewing Processes Viewing Processes Dynamically with top Controlling Processes Interrupting a Process Putting a Process in the Background Returning a Process to the Foreground Stopping (Pausing) a Process Signals Sending Signals to Processes with kill Sending Signals to Multiple Processes with killall Shutting Down the System More Process-Related Commands Summing Up Part 2 – Configuration and the Environment 11 – The Environment What is Stored in the Environment? Examining The Environment Some Interesting Variables How Is The Environment Established? What's in a Startup File? Modifying the Environment Which Files Should We Modify? Text Editors Using a Text Editor Activating Our Changes Summing Up Further Reading 12 – A Gentle Introduction to vi Why We Should Learn vi A Little Background Starting and Stopping vi Editing Modes Entering Insert Mode Saving Our Work Moving the Cursor Around Basic Editing Appending Text Opening a Line Deleting Text Cutting, Copying, and Pasting Text Joining Lines Search-and-Replace Searching Within a Line Searching the Entire File Global Search-and-Replace Editing Multiple Files Switching Between Files Opening Additional Files for Editing Copying Content from One File into Another Inserting an Entire File into Another Saving Our Work Summing Up Further Reading 13 – Customizing the Prompt Anatomy of a Prompt Trying Some Alternative Prompt Designs Adding Color Moving the Cursor Saving the Prompt Summing Up Further Reading Part 3 – Common Tasks and Essential Tools 14 – Package Management Packaging Systems How a Package System Works Package Files Repositories Dependencies High and Low-level Package Tools Common Package Management Tasks Finding a Package in a Repository Installing a Package from a Repository Installing a Package from a Package File Removing a Package Updating Packages from a Repository Upgrading a Package from a Package File Listing Installed Packages Determining Whether a Package is Installed Displaying Information About an Installed Package Finding Which Package Installed a File Summing Up Further Reading 15 – Storage Media Mounting and Unmounting Storage Devices Viewing a List of Mounted File Systems Determining Device Names Creating New File Systems Manipulating Partitions with fdisk Creating a New File System with mkfs Testing and Repairing File Systems Moving Data Directly to and from Devices Creating CD-ROM Images Creating an Image Copy of a CD-ROM Creating an Image From a Collection of Files Writing CD-ROM Images Mounting an ISO Image Directly Blanking a Rewritable CD-ROM Writing an Image Summing Up Further Reading Extra Credit 16 – Networking Examining and Monitoring a Network ping traceroute ip netstat Transporting Files Over a Network ftp lftp – A Better ftp wget Secure Communication with Remote Hosts ssh scp and sftp Summing Up Further Reading 17 – Searching for Files locate – Find Files the Easy Way find – Find Files the Hard Way Tests Operators Predefined Actions User-Defined Actions Improving Efficiency xargs A Return to the Playground Options Summing Up Further Reading 18 – Archiving and Backup Compressing Files gzip bzip2 Archiving Files tar zip Synchronizing Files and Directories Using rsync Over a Network Summing Up Further Reading 19 – Regular Expressions What are Regular Expressions? grep Metacharacters and Literals The Any Character Anchors Bracket Expressions and Character Classes Negation Traditional Character Ranges POSIX Character Classes POSIX Basic vs. Extended Regular Expressions Alternation Quantifiers ? - Match an Element Zero or One Time * - Match an Element Zero or More Times + - Match an Element One or More Times { } - Match an Element a Specific Number of Times Putting Regular Expressions to Work Validating a Phone List With grep Finding Ugly Filenames with find Searching for Files with locate Searching for Text with less and vim Summing Up Further Reading 20 – Text Processing Applications of Text Documents Web Pages Email Printer Output Program Source Code Revisiting Some Old Friends cat sort uniq Slicing and Dicing cut paste join Comparing Text comm diff patch Editing on the Fly tr sed aspell Summing Up Further Reading Extra Credit 21 – Formatting Output Simple Formatting Tools nl – Number Lines fold – Wrap Each Line to a Specified Length fmt – A Simple Text Formatter pr – Format Text for Printing printf – Format and Print Data Document Formatting Systems groff Summing Up Further Reading 22 – Printing A Brief History of Printing Printing in the Dim Times Character-Based Printers Graphical Printers Printing with Linux Preparing Files for Printing pr – Convert Text Files for Printing Sending a Print Job to a Printer lpr – Print Files (Berkeley Style) lp – Print Files (System V Style) Another Option: a2ps Monitoring and Controlling Print Jobs lpstat – Display Print System Status lpq – Display Printer Queue Status lprm / cancel – Cancel Print Jobs Summing Up Further Reading 23 – Compiling Programs What is Compiling? Are All Programs Compiled? Compiling a C Program Obtaining the Source Code Examining the Source Tree Building the Program Installing the Program Summing Up Further Reading Part 4 – Writing Shell Scripts 24 – Writing Your First Script What are Shell Scripts? How to Write a Shell Script Script File Format Executable Permissions Script File Location Good Locations for Scripts More Formatting Tricks Long Option Names Indentation and Line-Continuation Summing Up Further Reading 25 – Starting a Project First Stage: Minimal Document Second Stage: Adding a Little Data Variables and Constants Assigning Values to Variables and Constants Here Documents Summing Up Further Reading 26 – Top-Down Design Shell Functions Local Variables Keep Scripts Running Summing Up Further Reading 27 – Flow Control: Branching with if if Exit Status test File Expressions String Expressions Integer Expressions A More Modern Version of test (( )) - Designed for Integers Combining Expressions Control Operators: Another Way to Branch Summing Up Further Reading 28 – Reading Keyboard Input read – Read Values from Standard Input Options IFS Validating Input Menus Summing Up Extra Credit Further Reading 29 – Flow Control: Looping with while / until Looping while Breaking Out of a Loop until Reading Files with Loops Summing Up Further Reading 30 – Troubleshooting Syntactic Errors Missing Quotes Missing or Unexpected Tokens Unanticipated Expansions Logical Errors Defensive Programming Watch Out for Filenames Verifying Input Testing Test Cases Debugging Finding the Problem Area Tracing Examining Values During Execution Summing Up Further Reading 31 – Flow Control: Branching with case case Patterns Performing Multiple Actions Summing Up Further Reading 32 – Positional Parameters Accessing the Command Line Determining the Number of Arguments shift – Getting Access to Many Arguments Simple Applications Using Positional Parameters with Shell Functions Handling Positional Parameters en Masse A More Complete Application Summing Up Further Reading 33 – Flow Control: Looping with for for: Traditional Shell Form for: C Language Form Summing Up Further Reading 34 – Strings and Numbers Parameter Expansion Basic Parameters Expansions to Manage Empty Variables Expansions That Return Variable Names String Operations Case Conversion Arithmetic Evaluation and Expansion Number Bases Unary Operators Simple Arithmetic Assignment Bit Operations Logic bc – An Arbitrary Precision Calculator Language Using bc An Example Script Summing Up Extra Credit Further Reading 35 – Arrays What Are Arrays? Creating an Array Assigning Values to an Array Accessing Array Elements Array Operations Outputting the Entire Contents of an Array Determining the Number of Array Elements Finding the Subscripts Used by an Array Adding Elements to the End of an Array Sorting an Array Deleting an Array Associative Arrays Summing Up Further Reading 36 – Exotica Group Commands and Subshells Process Substitution Traps Asynchronous Execution wait Named Pipes Setting Up a Named Pipe Using Named Pipes Summing Up Further Reading Index
دانلود کتاب خط فرمان لینوکس