The Linux Command Line (2012)
Part I. Learning the Shell
Chapter 3. Exploring the System
Chapter 4. Manipulating Files and Directories
Chapter 5. Working with Commands
Chapter 7. Seeing the World as the Shell Sees It
Chapter 8. Advanced Keyboard Tricks
Part II. Configuration and the Environment
Chapter 12. A Gentle Introduction to vi
Chapter 13. Customizing the Prompt
Part III. Common Tasks and Essential Tools
Chapter 14. Package Management
Chapter 17. Searching for Files
Chapter 18. Archiving and Backup
Chapter 19. Regular Expressions
Chapter 23. Compiling Programs
Part IV. Writing Shell Scripts
Chapter 24. Writing Your First Script
Chapter 25. Starting a Project
Chapter 27. Flow Control: Branching with if
Chapter 28. Reading Keyboard Input
Chapter 29. Flow Control: Looping with while and until
Chapter 31. Flow Control: Branching with case
Chapter 32. Positional Parameters
Chapter 33. Flow Control: Looping with for
Chapter 34. Strings and Numbers