The Linux® Command Line
معرفی کتاب «The Linux® Command Line» نوشتهٔ William E. Shotts, Jr.، منتشرشده توسط نشر lulu.com در سال 2009. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «The Linux® Command Line» در دستهٔ بدون دستهبندی قرار دارد.
Part 1 – Introduction......Page 15 Why Use The Command Line?......Page 16 Who Should Read This Book......Page 17 What's In This Book......Page 18 Prerequisites......Page 19 Acknowledgments......Page 20 Colophon......Page 21 Part 2 – Learning The Shell......Page 23 Your First Keystrokes......Page 24 Cursor Movement......Page 25 Try Some Simple Commands......Page 26 Further Reading......Page 27 The Current Working Directory......Page 28 Listing The Contents Of A Directory......Page 29 Relative Pathnames......Page 30 Some Helpful Shortcuts......Page 32 More Fun With ls......Page 34 Options And Arguments......Page 35 A Longer Look At Long Format......Page 36 Determining A File's Type With file......Page 37 Viewing File Contents With less......Page 38 A Guided Tour......Page 40 Symbolic Links......Page 43 Further Reading......Page 44 Wildcards......Page 45 cp – Copy Files And Directories......Page 48 Useful Options And Examples......Page 49 Useful Options And Examples......Page 50 Useful Options And Examples......Page 51 Hard Links......Page 53 Creating Directories......Page 54 Copying Files......Page 55 Moving And Renaming Files......Page 56 Creating Hard Links......Page 57 Creating Symbolic Links......Page 58 Removing Files And Directories......Page 59 Summing Up......Page 61 What Exactly Are Commands?......Page 62 which – Display An Executable's Location......Page 63 help – Get Help For Shell Builtins......Page 64 man – Display A Program's Manual Page......Page 65 whatis – Display A Very Brief Description Of A Command......Page 67 info – Display A Program's Info Entry......Page 68 README And Other Program Documentation Files......Page 69 Creating Your Own Commands With alias......Page 70 Further Reading......Page 72 Standard Input, Output, And Error......Page 73 Redirecting Standard Output......Page 74 Redirecting Standard Error......Page 75 Redirecting Standard Output And Standard Error To One File......Page 76 cat – Concatenate Files......Page 77 Pipelines......Page 79 uniq - Report Or Omit Repeated Lines......Page 80 grep – Print Lines Matching A Pattern......Page 81 head / tail – Print First / Last Part Of Files......Page 82 tee – Read From Stdin And Output To Stdout And Files......Page 83 Summing Up......Page 84 Expansion......Page 86 Pathname Expansion......Page 87 Tilde Expansion......Page 88 Arithmetic Expansion......Page 89 Brace Expansion......Page 90 Parameter Expansion......Page 91 Command Substitution......Page 92 Double Quotes......Page 93 Single Quotes......Page 95 Escaping Characters......Page 96 Further Reading......Page 97 Cursor Movement......Page 98 Cutting And Pasting (Killing And Yanking) Text......Page 99 Completion......Page 100 Using History......Page 102 Searching History......Page 103 History Expansion......Page 105 Further Reading......Page 106 10 – Permissions......Page 107 Owners, Group Members, And Everybody Else......Page 108 Reading, Writing, And Executing......Page 109 chmod – Change file mode......Page 111 Setting File Mode With The GUI......Page 114 umask – Set Default Permissions......Page 115 Changing Identities......Page 118 su – Run A Shell With Substitute User And Group IDs......Page 119 sudo – Execute A Command As Another User......Page 120 chown – Change File Owner And Group......Page 121 Exercising Our Privileges......Page 123 Changing Your Password......Page 125 Further Reading......Page 126 How A Process Works......Page 127 Viewing Processes......Page 128 Viewing Processes Dynamically With top......Page 130 Controlling Processes......Page 132 Putting A Process In The Background......Page 133 Returning A Process To The Foreground......Page 134 Stopping (Pausing) A Process......Page 135 Sending Signals To Processes With kill......Page 136 More Process Related Commands......Page 139 Part 3 – Configuration And The Environment......Page 141 Examining The Environment......Page 142 Some Interesting Variables......Page 144 How Is The Environment Established?......Page 145 What's In A Startup File?......Page 146 Text Editors......Page 148 Using A Text Editor......Page 149 Further Reading......Page 153 Why We Should Learn vi......Page 154 Starting And Stopping vi......Page 155 Editing Modes......Page 157 Saving Our Work......Page 158 Moving The Cursor Around......Page 159 Appending Text......Page 160 Opening A Line......Page 161 Deleting Text......Page 162 Cutting, Copying And Pasting Text......Page 163 Searching The Entire File......Page 165 Global Search And Replace......Page 166 Editing Multiple Files......Page 168 Opening Additional Files For Editing......Page 169 Copying Content From One File Into Another......Page 170 Inserting An Entire File Into Another......Page 171 Saving Our Work......Page 172 Further Reading......Page 173 Anatomy Of A Prompt......Page 174 Trying Some Alternate Prompt Designs......Page 176 Adding Color......Page 177 Moving The Cursor......Page 180 Summing Up......Page 181 Further Reading......Page 182 Part 4 – Common Tasks And Essential Tools......Page 183 Packaging Systems......Page 184 Repositories......Page 185 High And Low-level Package Tools......Page 186 Installing A Package From A Repository......Page 187 Removing A Package......Page 188 Upgrading A Package From A Package File......Page 189 Determining If A Package Is Installed......Page 190 Summing Up......Page 191 Further Reading......Page 193 Mounting And Unmounting Storage Devices......Page 194 Viewing A List Of Mounted File Systems......Page 196 Determining Device Names......Page 200 Manipulating Partitions With fdisk......Page 203 Creating A New File System With mkfs......Page 206 Formatting Floppy Disks......Page 207 Moving Data Directly To/From Devices......Page 208 Creating An Image From A Collection Of Files......Page 209 Mounting An ISO Image Directly......Page 210 Extra Credit......Page 211 17 – Networking......Page 213 ping......Page 214 traceroute......Page 215 netstat......Page 216 Transporting Files Over A Network......Page 217 ftp......Page 218 Secure Communication With Remote Hosts......Page 220 ssh......Page 221 scp And sftp......Page 225 Further Reading......Page 226 locate – Find Files The Easy Way......Page 227 find – Find Files The Hard Way......Page 229 Tests......Page 230 Operators......Page 232 Predefined Actions......Page 235 User Defined Actions......Page 237 xargs......Page 238 A Return To The Playground......Page 240 Options......Page 242 Further Reading......Page 243 Compressing Files......Page 244 gzip......Page 245 bzip2......Page 247 tar......Page 248 zip......Page 254 Synchronizing Files And Directories......Page 256 Using rsync Over A Network......Page 259 Further Reading......Page 260 grep......Page 261 Metacharacters And Literals......Page 263 The Any Character......Page 264 Anchors......Page 265 Negation......Page 266 Traditional Character Ranges......Page 267 POSIX Character Classes......Page 268 POSIX Basic Vs. Extended Regular Expressions......Page 272 Alternation......Page 273 ? - Match An Element Zero Or One Time......Page 274 * - Match An Element Zero Or More Times......Page 275 { } - Match An Element A Specific Number Of Times......Page 276 Validating A Phone List With grep......Page 277 Finding Ugly Filenames With find......Page 278 Searching For Text In less And vim......Page 279 Further Reading......Page 281 Applications Of Text......Page 282 Revisiting Some Old Friends......Page 283 cat......Page 284 sort......Page 285 uniq......Page 293 cut......Page 294 paste......Page 298 join......Page 299 Comparing Text......Page 301 diff......Page 302 patch......Page 305 tr......Page 306 sed......Page 309 aspell......Page 317 Further Reading......Page 321 Extra Credit......Page 322 nl – Number Lines......Page 323 fmt – A Simple Text Formatter......Page 327 pr – Format Text For Printing......Page 331 printf – Format And Print Data......Page 332 Document Formatting Systems......Page 335 groff......Page 336 Further Reading......Page 342 Printing In The Dim Times......Page 344 Character-based Printers......Page 345 Graphical Printers......Page 346 pr – Convert Text Files For Printing......Page 347 lpr – Print Files (Berkeley Style)......Page 349 lp – Print Files (System V Style)......Page 350 Another Option: a2ps......Page 351 lpstat – Display Print System Status......Page 354 lpq – Display Printer Queue Status......Page 355 Further Reading......Page 356 What Is Compiling?......Page 358 Are All Programs Compiled?......Page 359 Obtaining The Source Code......Page 360 Examining The Source Tree......Page 362 Building The Program......Page 364 Summing Up......Page 368 Further Reading......Page 369 Part 5 – Writing Shell Scripts......Page 371 How To Write A Shell Script......Page 372 Script File Format......Page 373 Script File Location......Page 374 Indentation And Line Continuation......Page 376 Further Reading......Page 378 First Stage: Minimal Document......Page 379 Second Stage: Adding A Little Data......Page 381 Variables And Constants......Page 382 Assigning Values To Variables And Constants......Page 385 Here Documents......Page 386 Further Reading......Page 389 27 – Top-Down Design......Page 390 Shell Functions......Page 391 Local Variables......Page 394 Keep Scripts Running......Page 395 Further Reading......Page 398 if......Page 399 Exit Status......Page 400 File Expressions......Page 402 String Expressions......Page 405 Integer Expressions......Page 406 A More Modern Version Of test......Page 407 (( )) - Designed For Integers......Page 409 Combining Expressions......Page 410 Summing Up......Page 413 Further Reading......Page 414 29 – Reading Keyboard Input......Page 415 read – Read Values From Standard Input......Page 416 Options......Page 418 IFS......Page 420 Validating Input......Page 422 Menus......Page 423 Further Reading......Page 425 while......Page 426 Breaking Out Of A Loop......Page 429 until......Page 430 Reading Files With Loops......Page 431 Further Reading......Page 432 Syntactic Errors......Page 433 Missing Or Unexpected Tokens......Page 434 Unanticipated Expansions......Page 435 Defensive Programming......Page 437 Testing......Page 439 Test Cases......Page 440 Tracing......Page 441 Summing Up......Page 444 Further Reading......Page 445 case......Page 446 Patterns......Page 448 Further Reading......Page 450 Accessing The Command Line......Page 451 Determining The Number of Arguments......Page 452 shift – Getting Access To Many Arguments......Page 453 Simple Applications......Page 454 Using Positional Parameters With Shell Functions......Page 455 Handling Positional Parameters En Masse......Page 456 A More Complete Application......Page 458 Summing Up......Page 461 Further Reading......Page 464 for: Traditional Shell Form......Page 465 for: C Language Form......Page 468 Summing Up......Page 469 Further Reading......Page 470 Basic Parameters......Page 471 Expansions To Manage Empty Variables......Page 472 String Operations......Page 474 Arithmetic Evaluation And Expansion......Page 477 Simple Arithmetic......Page 478 Assignment......Page 480 Bit Operations......Page 482 Logic......Page 483 bc – An Arbitrary Precision Calculator Language......Page 486 An Example Script......Page 487 Further Reading......Page 489 Creating An Array......Page 490 Assigning Values To An Array......Page 491 Accessing Array Elements......Page 492 Determining The Number Of Array Elements......Page 494 Adding Elements To The End Of An Array......Page 495 Deleting An Array......Page 496 Summing Up......Page 497 Further Reading......Page 498 Group Commands And Subshells......Page 499 Process Substitution......Page 500 Traps......Page 502 wait......Page 506 Named Pipes......Page 507 Using Named Pipes......Page 508 Further Reading......Page 509 Index......Page 510
دانلود کتاب The Linux® Command Line