Jr·William E·Shotts《The Linux Command Line》

Jr·William E·Shotts《The Linux Command Line》

作者:Jr·William E·Shotts

出版社:No Starch Press

出版年:2012-1-17

评分:9.2

ISBN:9781593273897

所属分类:网络科技

书刊介绍

内容简介

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. Along the way you'll learn the timeless skills handed down by generations of gray-bearded, 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.

作品目录

Part 1 – Introduction.........................................................................1

1 – Introduction................................................................................................2

Why Use The Command Line?.......................................................................................2

What This Book Is About.................................................................................................3

Who Should Read This Book..........................................................................................3

What's In This Book.........................................................................................................4

How To Read This Book..................................................................................................5

Prerequisites...............................................................................................................5

Why I Don't Call It “GNU/Linux”.............................................................................5

Acknowledgments...........................................................................................................6

Your Feedback Is Needed!..............................................................................................7

Further Reading...............................................................................................................7

Colophon.........................................................................................................................7

Part 2 – Learning The Shell..............................................................9

2 – What Is The Shell?...................................................................................10

Terminal Emulators........................................................................................................10

Your First Keystrokes....................................................................................................10

Command History.....................................................................................................11

Cursor Movement.....................................................................................................11

A Few Words About Mice And Focus...................................................................11

Try Some Simple Commands........................................................................................12

Ending A Terminal Session............................................................................................13

The Console Behind The Curtain........................................................................13

Further Reading.............................................................................................................13

3 – Navigation.................................................................................................14

Understanding The File System Tree............................................................................14

The Current Working Directory......................................................................................14

Listing The Contents Of A Directory..............................................................................15

Changing The Current Working Directory.....................................................................16

Absolute Pathnames................................................................................................16

Relative Pathnames.................................................................................................16

Some Helpful Shortcuts............................................................................................18

Important Facts About Filenames........................................................................18

4 – Exploring The System.............................................................................20

More Fun With ls...........................................................................................................20

Options And Arguments............................................................................................21

A Longer Look At Long Format.................................................................................22

Determining A File's Type With file................................................................................23

Viewing File Contents With less....................................................................................24

What Is “Text”?.....................................................................................................24

Less Is More........................................................................................................26

A Guided Tour................................................................................................................26

Symbolic Links...............................................................................................................29

Hard Links.....................................................................................................................30

Further Reading.............................................................................................................30

5 – Manipulating Files And Directories........................................................31

Wildcards.......................................................................................................................31

Character Ranges................................................................................................33

Wildcards Work In The GUI Too..........................................................................33

mkdir – Create Directories.............................................................................................34

cp – Copy Files And Directories....................................................................................34

Useful Options And Examples..................................................................................35

mv – Move And Rename Files......................................................................................36

Useful Options And Examples..................................................................................36

rm – Remove Files And Directories...............................................................................37

Useful Options And Examples..................................................................................37

Be Careful With rm!.............................................................................................38

ln – Create Links............................................................................................................39

Hard Links................................................................................................................39

Symbolic Links..........................................................................................................40

Let's Build A Playground................................................................................................40

Creating Directories..................................................................................................40

Copying Files............................................................................................................41

Moving And Renaming Files.....................................................................................42

Creating Hard Links..................................................................................................43

Creating Symbolic Links...........................................................................................44

Removing Files And Directories...............................................................................45

Creating Symlinks With The GUI.........................................................................47

Summing Up.............................................................................................................47

6 – Working With Commands........................................................................48

What Exactly Are Commands?......................................................................................48

Identifying Commands...................................................................................................49

type – Display A Command's Type...........................................................................49

which – Display An Executable's Location...............................................................49

Getting A Command's Documentation..........................................................................50

help – Get Help For Shell Builtins............................................................................50

--help – Display Usage Information..........................................................................51

man – Display A Program's Manual Page................................................................51

apropos – Display Appropriate Commands..............................................................53

whatis – Display A Very Brief Description Of A Command.......................................53

The Most Brutal Man Page Of Them All..............................................................53

info – Display A Program's Info Entry.......................................................................54

README And Other Program Documentation Files................................................55

Creating Your Own Commands With alias....................................................................56

Revisiting Old Friends...................................................................................................58

Further Reading.............................................................................................................58

7 – Redirection................................................................................................59

Standard Input, Output, And Error.................................................................................59

Redirecting Standard Output.........................................................................................60

Redirecting Standard Error............................................................................................61

Redirecting Standard Output And Standard Error To One File................................62

Disposing Of Unwanted Output................................................................................63

/dev/null In Unix Culture......................................................................................63

Redirecting Standard Input............................................................................................63

cat – Concatenate Files............................................................................................63

Pipelines........................................................................................................................65

Filters........................................................................................................................66

uniq - Report Or Omit Repeated Lines....................................................................66

wc – Print Line, Word, And Byte Counts..................................................................67

grep – Print Lines Matching A Pattern......................................................................67

head / tail – Print First / Last Part Of Files................................................................68

tee – Read From Stdin And Output To Stdout And Files..........................................69

Summing Up..................................................................................................................70

Linux Is About Imagination..................................................................................70

8 – Seeing The World As The Shell Sees It..................................................72

Expansion......................................................................................................................72

Pathname Expansion...............................................................................................73

Pathname Expansion Of Hidden Files.................................................................74

Tilde Expansion........................................................................................................74

Arithmetic Expansion................................................................................................75

Brace Expansion......................................................................................................76

Parameter Expansion...............................................................................................77

Command Substitution.............................................................................................78

Quoting..........................................................................................................................79

Double Quotes..........................................................................................................79

Single Quotes...........................................................................................................81

Escaping Characters................................................................................................82

Backslash Escape Sequences............................................................................82

Summing Up..................................................................................................................83

Further Reading.............................................................................................................83

9 – Advanced Keyboard Tricks.....................................................................84

Command Line Editing..................................................................................................84

Cursor Movement.....................................................................................................84

Modifying Text...........................................................................................................85

Cutting And Pasting (Killing And Yanking) Text........................................................85

The Meta Key......................................................................................................86

Completion....................................................................................................................86

Programmable Completion..................................................................................88

Using History.................................................................................................................88

Searching History.....................................................................................................89

History Expansion.....................................................................................................91

script....................................................................................................................91

Summing Up..................................................................................................................92

Further Reading.............................................................................................................92

10 – Permissions............................................................................................93

Owners, Group Members, And Everybody Else............................................................94

Reading, Writing, And Executing...................................................................................95

chmod – Change file mode.......................................................................................97

What The Heck Is Octal?.....................................................................................98

Setting File Mode With The GUI.............................................................................100

umask – Set Default Permissions..........................................................................101

Some Special Permissions................................................................................103

Changing Identities......................................................................................................104

su – Run A Shell With Substitute User And Group IDs..........................................105

sudo – Execute A Command As Another User.......................................................106

Ubuntu And sudo...............................................................................................107

chown – Change File Owner And Group................................................................107

chgrp – Change Group Ownership.........................................................................109

Exercising Our Privileges............................................................................................109

Changing Your Password.............................................................................................111

Further Reading...........................................................................................................112

11 – Processes..............................................................................................113

How A Process Works.................................................................................................113

Viewing Processes......................................................................................................114

Viewing Processes Dynamically With top...............................................................116

Controlling Processes..................................................................................................118

Interrupting A Process.............................................................................................119

Putting A Process In The Background....................................................................119

Returning A Process To The Foreground...............................................................120

Stopping (Pausing) A Process................................................................................121

Signals.........................................................................................................................122

Sending Signals To Processes With kill.................................................................122

Sending Signals To Multiple Processes With killall................................................125

More Process Related Commands.............................................................................125

Part 3 – Configuration And The Environment.............................127

12 – The Environment..................................................................................128

What Is Stored In The Environment?..........................................................................128

Examining The Environment..................................................................................128

Some Interesting Variables.....................................................................................130

How Is The Environment Established?.......................................................................131

What's In A Startup File?........................................................................................132

Modifying The Environment.........................................................................................134

Which Files Should We Modify?.............................................................................134

Text Editors.............................................................................................................134

Using A Text Editor.................................................................................................135

Why Comments Are Important..........................................................................138

Activating Our Changes..........................................................................................139

Summing Up................................................................................................................139

Further Reading..........................................................................................................139

13 – A Gentle Introduction To vi.................................................................140

Why We Should Learn vi.............................................................................................140

A Little Background ....................................................................................................141

Starting And Stopping vi..............................................................................................141

Compatibility Mode............................................................................................142

Editing Modes..............................................................................................................143

Entering Insert Mode..............................................................................................144

Saving Our Work....................................................................................................144

Moving The Cursor Around.........................................................................................145

Basic Editing................................................................................................................146

Appending Text.......................................................................................................146

Opening A Line.......................................................................................................147

Deleting Text...........................................................................................................148

Cutting, Copying And Pasting Text.........................................................................149

Joining Lines...........................................................................................................151

Search And Replace....................................................................................................151

Searching Within A Line..........................................................................................151

Searching The Entire File.......................................................................................151

Global Search And Replace...................................................................................152

Editing Multiple Files...................................................................................................154

Switching Between Files.........................................................................................155

Opening Additional Files For Editing......................................................................155

Copying Content From One File Into Another........................................................156

Inserting An Entire File Into Another.......................................................................157

Saving Our Work.........................................................................................................158

Further Reading..........................................................................................................159

14 – Customizing The Prompt.....................................................................160

Anatomy Of A Prompt..................................................................................................160

Trying Some Alternate Prompt Designs......................................................................162

Adding Color................................................................................................................163

Terminal Confusion............................................................................................163

Moving The Cursor......................................................................................................166

Saving The Prompt......................................................................................................167

Summing Up................................................................................................................167

Further Reading..........................................................................................................168

Part 4 – Common Tasks And Essential Tools.............................169

15 – Package Management..........................................................................170

Packaging Systems.....................................................................................................170

How A Package System Works...................................................................................171

Package Files.........................................................................................................171

Repositories............................................................................................................171

Dependencies.........................................................................................................172

High And Low-level Package Tools........................................................................172

Common Package Management Tasks.......................................................................173

Finding A Package In A Repository........................................................................173

Installing A Package From A Repository.................................................................173

Installing A Package From A Package File.............................................................174

Removing A Package.............................................................................................174

Updating Packages From A Repository..................................................................175

Upgrading A Package From A Package File...........................................................175

Listing Installed Packages......................................................................................176

Determining If A Package Is Installed.....................................................................176

Displaying Info About An Installed Package...........................................................177

Finding Which Package Installed A File.................................................................177

Summing Up................................................................................................................177

The Linux Software Installation Myth.................................................................178

Further Reading..........................................................................................................179

16 – Storage Media.......................................................................................180

Mounting And Unmounting Storage Devices..............................................................180

Viewing A List Of Mounted File Systems................................................................182

Why Unmounting Is Important...........................................................................185

Determining Device Names....................................................................................186

Creating New File Systems.........................................................................................189

Manipulating Partitions With fdisk..........................................................................189

Creating A New File System With mkfs..................................................................192

Testing And Repairing File Systems............................................................................193

What The fsck?..................................................................................................193

Formatting Floppy Disks..............................................................................................193

Moving Data Directly To/From Devices.......................................................................194

Creating CD-ROM Images..........................................................................................195

Creating An Image Copy Of A CD-ROM.................................................................195

Creating An Image From A Collection Of Files.......................................................195

A Program By Any Other Name.........................................................................196

Writing CD-ROM Images.............................................................................................196

Mounting An ISO Image Directly............................................................................196

Blanking A Re-Writable CD-ROM...........................................................................197

Writing An Image....................................................................................................197

Further Reading..........................................................................................................197

E

相关推荐

微信二维码