Atjaunināt sīkdatņu piekrišanu

E-grāmata: Linux Command Line, 2nd Edition

4.38/5 (1764 ratings by Goodreads)
  • Formāts: EPUB+DRM
  • Izdošanas datums: 05-Mar-2019
  • Izdevniecība: No Starch Press,US
  • Valoda: eng
  • ISBN-13: 9781593279530
Citas grāmatas par šo tēmu:
  • Formāts - EPUB+DRM
  • Cena: 27,96 €*
  • * ši ir gala cena, t.i., netiek piemērotas nekādas papildus atlaides
  • Ielikt grozā
  • Pievienot vēlmju sarakstam
  • Šī e-grāmata paredzēta tikai personīgai lietošanai. E-grāmatas nav iespējams atgriezt un nauda par iegādātajām e-grāmatām netiek atmaksāta.
  • Formāts: EPUB+DRM
  • Izdošanas datums: 05-Mar-2019
  • Izdevniecība: No Starch Press,US
  • Valoda: eng
  • ISBN-13: 9781593279530
Citas grāmatas par šo tēmu:

DRM restrictions

  • Kopēšana (kopēt/ievietot):

    nav atļauts

  • Drukāšana:

    nav atļauts

  • Lietošana:

    Digitālo tiesību pārvaldība (Digital Rights Management (DRM))
    Izdevējs ir piegādājis šo grāmatu šifrētā veidā, kas nozīmē, ka jums ir jāinstalē bezmaksas programmatūra, lai to atbloķētu un lasītu. Lai lasītu šo e-grāmatu, jums ir jāizveido Adobe ID. Vairāk informācijas šeit. E-grāmatu var lasīt un lejupielādēt līdz 6 ierīcēm (vienam lietotājam ar vienu un to pašu Adobe ID).

    Nepieciešamā programmatūra
    Lai lasītu šo e-grāmatu mobilajā ierīcē (tālrunī vai planšetdatorā), jums būs jāinstalē šī bezmaksas lietotne: PocketBook Reader (iOS / Android)

    Lai lejupielādētu un lasītu šo e-grāmatu datorā vai Mac datorā, jums ir nepieciešamid Adobe Digital Editions (šī ir bezmaksas lietotne, kas īpaši izstrādāta e-grāmatām. Tā nav tas pats, kas Adobe Reader, kas, iespējams, jau ir jūsu datorā.)

    Jūs nevarat lasīt šo e-grāmatu, izmantojot Amazon Kindle.

You've experienced the shiny, point-and-click surface of your Linux computer--now dive below and explore its depths with the power of the command line.

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.

Recenzijas

"This excellent Linux command line book is more than cubicle decoration, it's a secret super power." Ken Hess, Red Hat

"For those looking to master the Linux command line and get an essential understand of the core Linux command line tools, this book is a highly effective and useful guide." Ben Rothke, RSA Conference

"I can honestly say I have found THE beginner's guide to Linux." Jayson Broughton, Linux Journal

"This is exactly what a Linux beginner needs to get up to speed quickly. The book goes beyond simply walking through all of the command line utilities, and ventures into the realm of theory and how things work together." Nicholas C. Zakas, Yahoo!

"Anyone who reads this book and makes use of the examples provided will not be able to avoid becoming a Unix command line pro by the time they've hit the end of the book. It provides an excellent introduction to the command line that takes students from knowing nearly nothing to using impressively sophisticated commands." Sandra Henry-Stocker, ITworld

"The most approachable tome on the subject." Federico Lucifredi, Linux Magazine

"If you would like to start using the command line, improve your existing skills, or simply want to discover tools that you were never even aware existed, this book has everything you need, and I wholly recommend it." Phil Bull, author of the official Ubuntu documentation

"This is the best introduction to the command-line I have read." BeginLinux.com

"A perfect companion to more remedial guides to Linux that touch on the command only briefly, and also a terrific bridge to deeper technical programming books. Highly recommended." Game Vortex

"The Linux Command Line is pleasant to read. It has a light tone, while also getting down to business." John D. Cook, The Endeavor

"A delightful read and you can hand it to a junior colleague or friend with more limited Unix shell exposure and be confident that they come back significantly shell-wiser and probably happier." Peter N.M. Hansteen, That Grumpy BSD Guy

"If you're a novice Linux player, or just want to get beyond the pretty graphical wrapper of your MacBook, put this book at the top of your list." Michael Larsen, TESTHEAD

"I give this book to all my interns on day one. I find this to be an incredibly indispensable resource for teaching not only the basics of the Linux command line, but also anybody looking to get into information security. It's wildly comprehensive without being overwhelming. It does a great job of introducing a basic command, showing you all of the options on how to use the command, and a lot of examples and practical stories to back them up." Matt Barnett, Chief Strategist and CoFounder, SEVN-X

"If you want to . . . become a Linux expert, I would recommend a book The Linux Command Line by William Shotts. This book is so simple and gave me a lot of knowledge on Linux." Untamed Coder

"A great way to learn some tips on working with those HUGE log files that are critical to cyber defense." Mark Jeanmougin, @markjx01

"The author takes you from your very first terminal keystrokes to writing full programs using a Linux shell or command line." Xtreme Pentesting, @xtremepentest

"The Linux Command Line by William Shotts will always be my fav book about #bash scripting! It's absolutely amazing! Every time I read it again I learn something new... And I'm definitely in love with all the books published by No Starch Press!!" Luisa Donato, @Luisa_Donato

Papildus informācija

You've experienced the shiny, point-and-click surface of your Linux computer--now dive below and explore its depths with the power of the command line.
Acknowledgments xxiii
First Edition
xxiii
Second Edition
xxiv
Introduction xxv
Why Use the Command Line2
xxvi
What This Book Is About
xxvi
Who Should Read This Book
xxvii
What's in This Book
xxvii
How to Read This Book
xxviii
Prerequisites
xxviii
What's New in the Second Edition
xxix
Your Feedback Is Needed!
xxx
Part I: Learning The Shell
1 What Is The Shell?
3(4)
Terminal Emulators
3(1)
Making Your First Keystrokes
4(1)
Command History
4(1)
Cursor Movement
4(1)
Try Some Simple Commands
5(1)
Ending a Terminal Session
6(1)
Summing Up
6(1)
2 Navigation
7(6)
Understanding the File System Tree
7(1)
The Current Working Directory
8(1)
Listing the Contents of a Directory
9(1)
Changing the Current Working Directory
9(3)
Absolute Pathnames
9(1)
Relative Pathnames
9(2)
Some Helpful Shortcuts
11(1)
Summing Up
12(1)
3 Exploring The System
13(10)
More Fun with Is
13(3)
Options and Arguments
14(1)
A Longer Look at Long Format
15(1)
Determining a File's Type with file
16(1)
Viewing File Contents with less
17(1)
Taking a Guided Tour
18(3)
Symbolic Links
21(1)
Hard Links
22(1)
Summing Up
22(1)
4 Manipulating Files And Directories
23(16)
Wildcards
24(2)
mkdir-Create Directories
26(1)
cp-Copy Files and Directories
26(1)
Useful Options and Examples
26(1)
mv-Move and Rename Files
27(1)
Useful Options and Examples
28(1)
rm-Remove Files and Directories
28(2)
Useful Options and Examples
29(1)
In-Create Links
30(1)
Hard Links
30(1)
Symbolic Links
31(1)
Building a Playground
31(6)
Creating Directories
31(1)
Copying Files
31(1)
Moving and Renaming Files
32(1)
Creating Hard Links
33(1)
Creating Symbolic Links
34(1)
Removing Files and Directories
35(2)
Summing Up
37(2)
5 Working With Commands
39(10)
What Exactly Are Commands?
40(1)
Identifying Commands
40(1)
type-Display a Command's Type
40(1)
which-Display an Executable's Location
40(1)
Getting a Command's Documentation
41(5)
help-Get Help for Shell Builtins
41(1)
-help-Display Usage Information
42(1)
man-Display a Program's Manual Page
42(2)
apropos-Display Appropriate Commands
44(1)
whatis-Display One-line Manual Page Descriptions
44(1)
info-Display a Program's Info Entry
45(1)
README and Other Program Documentation Files
46(1)
Creating Our Own Commands with alias
46(2)
Summing Up
48(1)
6 Redirection
49(12)
Standard Input, Output, and Error
50(1)
Redirecting Standard Output
50(2)
Redirecting Standard Error
52(1)
Redirecting Standard Output and Standard Error to One File
52(1)
Disposing of Unwanted Output
53(1)
Redirecting Standard Input
53(2)
cat: Concatenate Files
53(2)
Pipelines
55(4)
Filters
55(1)
uniq: Report or Omit Repeated Lines
56(1)
wc: Print Line, Word, and Byte Counts
57(1)
grey: Print Lines Matching a Pattern
57(1)
head/tail: Print First/Last Part of Files
58(1)
tee: Read from Stdin and Output to Stdout and Files
59(1)
Summing Up
59(2)
7 Seeing The World As The Shell Sees It
61(12)
Expansion
61(6)
Pathname Expansion
62(1)
Tilde Expansion
63(1)
Arithmetic Expansion
64(1)
Brace Expansion
65(1)
Parameter Expansion
66(1)
Command Substitution
67(1)
Quoting
67(4)
Double Quotes
68(1)
Single Quotes
69(1)
Escaping Characters
70(1)
Backslash Escape Sequences
70(1)
Summing Up
71(2)
8 Advanced Keyboard Tricks
73(8)
Command Line Editing
74(2)
Cursor Movement
74(1)
Modifying Text
74(1)
Cutting and Pasting (Killing and Yanking) Text
75(1)
Completion
76(1)
Using History
77(3)
Searching History
77(2)
History Expansion
79(1)
Summing Up
80(1)
9 Permissions
81(18)
Owners, Group Members, and Everybody Else
82(1)
Reading, Writing, and Executing
83(8)
chmod: Change File Mode
85(3)
Setting File Mode with the GUI
88(1)
umask: Set Default Permissions
89(1)
Some Special Permissions
90(1)
Changing Identities
91(4)
su: Run a Shell with Substitute User and Group IDs
92(1)
sudo: Execute a Command As Another User
93(1)
chown: Change File Owner and Group
94(1)
chgrp: Change Group Ownership
95(1)
Exercising Our Privileges
95(2)
Changing Your Password
97(1)
Summing Up
98(1)
10 Processes
99(16)
How a Process Works
100(1)
Viewing Processes
100(4)
Viewing Processes Dynamically with top
102(2)
Controlling Processes
104(3)
Interrupting a Process
105(1)
Putting a Process in the Background
105(1)
Returning a Process to the Foreground
106(1)
Stopping (Pausing) a Process
106(1)
Signals
107(3)
Sending Signals to Processes with kill
107(2)
Sending Signals to Multiple Processes with killall
109(1)
Shutting Down the System
110(1)
More Process-Related Commands
111(1)
Summing Up
111(4)
Part II: Configuration And The Environment
11 The Environment
115(12)
What Is Stored in the Environment?
116(2)
Examining the Environment
116(1)
Some Interesting Variables
117(1)
How Is the Environment Established?
118(3)
What's in a Startup File?
119(2)
Modifying the Environment
121(4)
Which Files Should We Modify?
121(1)
Text Editors
121(1)
Using a Text Editor
122(3)
Activating Our Changes
125(1)
Summing Up
125(2)
12 A Gentle Introduction To VI
127(18)
Why We Should Learn vi
128(1)
A Little Background
128(1)
Starting and Stopping vi
128(2)
Editing Modes
130(1)
Entering Insert Mode
131(1)
Saving Our Work
131(1)
Moving the Cursor Around
131(1)
Basic Editing
132(4)
Appending Text
132(1)
Opening a Line
133(1)
Deleting Text
134(1)
Cuffing, Copying, and Pasting Text
135(1)
Joining Lines
136(1)
Search-and-Replace
136(3)
Searching Within a Line
137(1)
Searching the Entire File
137(1)
Global Search-and-Replace
137(2)
Editing Multiple Files
139(3)
Switching Between Files
139(1)
Opening Additional Files for Editing
140(1)
Copying Content from One File into Another
141(1)
Inserting an Entire File into Another
141(1)
Saving Our Work
142(1)
Summing Up
143(2)
13 Customizing The Prompt
145(10)
Anatomy of a Prompt
145(2)
Trying Some Alternative Prompt Designs
147(1)
Adding Color
148(2)
Moving the Cursor
150(1)
Saving the Prompt
151(1)
Summing Up
151(4)
Part III: Common Tasks And Essential Tools
14 Package Management
155(10)
Packaging Systems
156(1)
How a Package System Works
156(2)
Package Files
156(1)
Repositories
157(1)
Dependencies
157(1)
High- and Low-Level Package Tools
158(1)
Common Package Management Tasks
158(4)
Finding a Package in a Repository
158(1)
Installing a Package from a Repository
159(1)
Installing a Package from a Package File
159(1)
Removing a Package
160(1)
Updating Packages from a Repository
160(1)
Upgrading a Package from a Package File
160(1)
Listing Installed Packages
161(1)
Determining Whether a Package Is Installed
161(1)
Displaying Information About an Installed Package
161(1)
Finding Which Package Installed a File
162(1)
Summing Up
162(3)
15 Storage Media
165(16)
Mounting and Unmounting Storage Devices
166(7)
Viewing a List of Mounted File Systems
167(3)
Determining Device Names
170(3)
Creating New File Systems
173(3)
Manipulating Partitions with fdisk
173(2)
Creating a New File System with mkfs
175(1)
Testing and Repairing File Systems
176(1)
Moving Data Directly to and from Devices
177(1)
Creating CD-ROM Images
177(1)
Creating an Image Copy of a CD-ROM
177(1)
Creating an Image from a Collection of Files
178(1)
Writing CD-ROM Images
178(1)
Mounting an ISO Image Directly
179(1)
Blanking a Rewritable CD-ROM
179(1)
Writing an Image
179(1)
Summing Up
179(1)
Extra Credit
180(1)
16 Networking
181(14)
Examining and Monitoring a Network
182(3)
ping
182(1)
traceroute
183(1)
ip
184(1)
netstat
184(1)
Transporting Files over a Network
185(3)
ftp
186(1)
lftp-a Better ftp
187(1)
wget
188(1)
Secure Communication with Remote Hosts
188(5)
ssh
188(4)
scp and sftp
192(1)
Summing Up
193(2)
17 Searching For Files
195(14)
locate-Find Files the Easy Way
196(1)
find-Find Files the Hard Way
197(11)
Tests
198(2)
Operators
200(2)
Predefined Actions
202(2)
User-Defined Actions
204(1)
Improving Efficiency
204(1)
xargs
205(1)
A Return to the Playground
206(2)
find Options
208(1)
Summing Up
208(1)
18 Archiving And Backup
209(16)
Compressing Files
210(3)
gzip
210(2)
bzip2
212(1)
Archiving Files
213(6)
tar
213(4)
zip
217(2)
Synchronizing Files and Directories
219(4)
Using rsync over a Network
222(1)
Summing Up
223(2)
19 Regular Expressions
225(20)
What Are Regular Expressions?
226(1)
grep
226(1)
Metacharacters and Literals
227(1)
The Any Character
228(1)
Anchors
228(2)
Bracket Expressions and Character Classes
230(1)
Negation
230(1)
Traditional Character Ranges
230(1)
POSIX Character Classes
231(3)
POSIX Basic vs. Extended Regular Expressions
234(1)
Alternation
235(1)
Quantifiers
236(3)
?-Match an Element Zero or One Time
236(1)
-Match an Element Zero or More Times
237(1)
+-Match an Element One or More Times
238(1)
{ }-Match an Element a Specific Number of Times
238(1)
Putting Regular Expressions to Work
239(3)
Validating a Phone List with grep
239(1)
Finding Ugly Filenames with find
240(1)
Searching for Files with locate
241(1)
Searching for Text with less and vim
241(1)
Summing Up
242(3)
20 Text Processing
245(34)
Applications of Text
246(1)
Documents
246(1)
Web Pages
246(1)
Email
246(1)
Printer Output
246(1)
Program Source Code
247(1)
Revisiting Some Old Friends
247(9)
cat
247(1)
sort
248(6)
uniq
254(2)
Slicing and Dicing
256(6)
cut-Remove Sections from Each Line of Files
256(2)
paste-Merge Lines of Files
258(2)
join-Join Lines of Two Files on a Common Field
260(2)
Comparing Text
262(4)
comm-Compare Two Sorted Files Line by Line
262(1)
diff-Compare Files Line by Line
263(2)
patch-Apply a diff to an Original
265(1)
Editing on the Fly
266(12)
tr-Transliterate or Delete Characters
266(2)
sed-Stream Editor for Filtering and Transforming Text
268(7)
aspell-Interactive Spellchecker
275(3)
Summing Up
278(1)
Extra Credit
278(1)
21 Formatting Output
279(18)
Simple Formatting Tools
280(10)
nl-Number Lines
280(2)
fold-Wrap Each Line to a Specified Length
282(1)
fmt-A Simple Text Formatter
283(3)
pr-Format Text for Printing
286(1)
printf-Format and Print Data
287(3)
Document Formatting Systems
290(5)
groff
290(5)
Summing Up
295(2)
22 Printing
297(12)
A Brief History of Printing
298(2)
Printing in the Dim Times
298(1)
Character-Based Printers
298(1)
Graphical Printers
299(1)
Printing with Linux
300(1)
Preparing Files for Printing
300(1)
pr-Convert Text Files for Printing
300(1)
Sending a Print Job to a Printer
301(4)
lpr-Print Files (Berkeley Style)
302(1)
lp-Print Files (System V Style)
302(1)
Another Option: a2ps
303(2)
Monitoring and Controlling Print Jobs
305(2)
lpstat-Display Print System Status
306(1)
lpq-Display Printer Queue Status
306(1)
lprm/cancel-Cancel Print Jobs
307(1)
Summing Up
307(2)
23 Compiling Programs
309(14)
What Is Compiling2
310(1)
Are All Programs Compiled?
311(1)
Compiling a C Program
311(8)
Obtaining the Source Code
312(2)
Examining the Source Tree
314(1)
Building the Program
315(3)
Installing the Program
318(1)
Summing Up
319(4)
Part IV: Writing Shell Scripts
24 Writing Your First Script
323(6)
What Are Shell Scripts?
323(1)
How to Write a Shell Script
324(3)
Script File Format
324(1)
Executable Permissions
325(1)
Script File Location
325(1)
Good Locations for Scripts
326(1)
More Formatting Tricks
327(1)
Long Option Names
327(1)
Indentation and Line Continuation
327(1)
Summing Up
328(1)
25 Starting A Project
329(10)
First Stage: Minimal Document
330(1)
Second Stage: Adding a Little Data
331(1)
Variables and Constants
332(4)
Assigning Values to Variables and Constants
334(2)
Here Documents
336(2)
Summing Up
338(1)
26 Top-Down Design
339(10)
Shell Functions
340(3)
Local Variables
343(1)
Keep Scripts Running
344(3)
Summing Up
347(2)
27 Flow Control: Branching With If
349(14)
if Statements
350(1)
Exit Status
350(2)
Using test
352(5)
File Expressions
352(2)
String Expressions
354(2)
Integer Expressions
356(1)
A More Modern Version of test
357(1)
(( ))-Designed for Integers
358(1)
Combining Expressions
359(2)
Control Operators: Another Way to Branch
361(1)
Summing Up
362(1)
28 Reading Keyboard Input
363(12)
read-Read Values from Standard Input
364(6)
Options
366(2)
IFS
368(2)
Validating Input
370(2)
Menus
372(1)
Summing Up
373(1)
Extra Credit
373(2)
29 Flow Control: Looping With While/Until
375(8)
Looping
376(2)
while
376(2)
Breaking Out of a Loop
378(2)
until
379(1)
Reading Files with Loops
380(1)
Summing Up
381(2)
30 Troubleshooting
383(12)
Syntactic Errors
383(4)
Missing Quotes
384(1)
Missing or Unexpected Tokens
385(1)
Unanticipated Expansions
386(1)
Logical Errors
387(3)
Defensive Programming
387(1)
Watch Out for Filenames
388(1)
Verifying Input
389(1)
Testing
390(1)
Test Cases
391(1)
Debugging
391(3)
Finding the Problem Area
391(1)
Tracing
392(2)
Examining Values During Execution
394(1)
Summing Up
394(1)
31 Flow Control: Branching With Case
395(6)
The case Command
396(4)
Patterns
397(2)
Performing Multiple Actions
399(1)
Summing Up
400(1)
32 Positional Parameters
401(12)
Accessing the Command Line
401(4)
Determining the Number of Arguments
402(1)
shift-Getting Access to Many Arguments
403(1)
Simple Applications
404(1)
Using Positional Parameters with Shell Functions
405(1)
Handling Positional Parameters en Masse
405(2)
A More Complete Application
407(3)
Summing Up
410(3)
33 Flow Control: Looping With For
413(6)
for: Traditional Shell Form
413(3)
for: C Language Form
416(1)
Summing Up
417(2)
34 Strings And Numbers
419(18)
Parameter Expansion
419(8)
Basic Parameters
420(1)
Expansions to Manage Empty Variables
420(2)
Expansions That Return Variable Names
422(1)
String Operations
422(3)
Case Conversion
425(2)
Arithmetic Evaluation and Expansion
427(7)
Number Bases
427(1)
Unary Operators
428(1)
Simple Arithmetic
428(1)
Assignment
429(2)
Bit Operations
431(1)
Logic
432(2)
bc-An Arbitrary Precision Calculator Language
434(2)
Using be
434(1)
An Example Script
435(1)
Summing Up
436(1)
Extra Credit
436(1)
35 Arrays
437(10)
What Are Arrays?
437(1)
Creating an Array
438(1)
Assigning Values to an Array
438(1)
Accessing Array Elements
439(2)
Array Operations
441(3)
Outputting the Entire Contents of an Array
441(1)
Determining the Number of Array Elements
441(1)
Finding the Subscripts Used by an Array
442(1)
Adding Elements to the End of an Array
442(1)
Sorting an Array
443(1)
Deleting an Array
443(1)
Associative Arrays
444(1)
Summing Up
444(3)
36 Exotica
447(12)
Group Commands and Subshells
447(6)
Process Substitution
451(2)
Traps
453(3)
Asynchronous Execution with wait
456(1)
Named Pipes
457(1)
Setting Up a Named Pipe
458(1)
Using Named Pipes
458(1)
Summing Up
458(1)
Index 459
William Shotts has been a software professional for more than 30 years and an avid Linux user for more than 20 years. He has an extensive background in software development, including technical support, quality assurance, and documentation. He is also the creator of LinuxCommand.org, a Linux education and advocacy site featuring news, reviews, and extensive support for using the Linux command line.