NEW TITLE RELEASE ANNOUNCEMENT
See the latest about a temporary release delay on new titles. Learn more.
More than 9 hours of video instruction
More than 9 hours of video instruction to help you learn bash from the ground up–from fundamental scripting concepts to complex scripting techniques–plus hands-on exercises, concept quizzes, and scripting simulations to help you practice your work and check your results
Bash Scripting Complete Video Course teaches you everything you need to know about shell scripting, from novice scripting to advanced script analysis and scripting for performance. This course consists of 16 lessons that take you from learning Bash basics to advanced scripting concepts. Each lesson contains practical examples to show how scripting solutions are being used in the real world. Each lesson concludes with an exercise, so you can test your own skills. A video explanation is also included so you can follow along and check your work. You will end the course by going beyond Bash and starting your first Python project.
This title includes
Bash Scripting FundamentalsLesson 1: Creating Your First Shell Script1.1: Why Scripting in Bash Makes Sense1.2: Choosing an Editor1.3: Core Bash Script Ingredients1.4: Storing and Running the Script1.5: Using Bash Internal Commands versus External Commands1.6: Finding Help About Scripting ComponentsExercise 1Exercise 1 SolutionLesson 2: Working with Variables and Parameters2.1: About Terminology2.2: Using and Defining Variables2.3: Defining Variables with the read Command2.4: Understanding Variables and Subshells2.5: Sourcing2.6: Quoting2.7: Handling Script Arguments2.8: Understanding the Need to Use Shift2.9: Using Command Substitution2.10': String Verification2.11: Using Here DocumentsExercise 2Exercise 2 SolutionLesson 3: Transforming Input3.1: Working with Substitution Operators3.2: Using Pattern Matching Operators3.3: Understanding Regular Expressions3.4: CalculatingExercise 3Exercise 3 SolutionLesson 4: Using Essential External Tools4.1: Using grep4.2: Using test4.3: Using cut and sort4.4: Using tail and head4.5: Using sed4.6: Using awk4.7: Using trExercise 4Exercise 4 SolutionLesson 5: Using Conditional Statements5.1: Using if then fi5.2: Using && and ||5.3: Using for5.4: Using case5.5: Using while and untilExercise 5Exercise 5 SolutionLesson 6: Using Advanced Scripting Options6.1: Working with Options6.2: Using Functions6.3: Working with Arrays6.4: Defining Menu Interfaces6.5: Using trapExercise 6Exercise 6 SolutionLesson 7: Script Debugging and Analyzing7.1: Design Considerations7.2: Common Analyzing Tools7.3: Using bash -xExercise 7Exercise 7 SolutionLesson 8: Scripting by Example8.1: Monitoring CPU Utilization Part 18.2: Monitoring CPU Utilization Part 28.3: Practicing Calculation8.4: Reading an init Script8.5: Using a Countdown Script8.6: Efficient if then fi8.7: Simple Process Monitoring
Advanced Bash ScriptingLesson 1: Reviewing Basics1.1: Using Pattern Matching1.2: Using Command Substitution1.3: Using Arguments and Variables1.4: Using Iteration Structures (Part 1)1.5: Using Iteration Structures (Part 2)1.6: Using Arrays1.7: Using Functions1.8: Analyzing Math ScriptExercise 1Exercise 1 Solution (Part 1)Exercise 1 Solution (Part 2)Lesson 2: Scripting Best Practices2.1: Organizing Scripts2.2: Working With Include Files2.3: Using Internal vs. External Commands2.4: Making Shell Scripts More Secure2.5: Analyzing Foo Script2.6: Analyzing Cd ScriptExercise 2Exercise 2 SolutionLesson 3: Understanding Syntax Differences3.1: Understanding the Origins of Bash3.2: Using Bourne Style Syntax3.3: Using C-Style Syntax3.4: Using Different Methods to Test3.5: Using Different Methods to Calculate3.6: Analyzing Tcsh Script3.7: Analyzing Tcsh Script in BashExercise 3Exercise 3 SolutionLesson 4: Using Advanced awk, sed, and Regular Expressions4.1: Using Regular Expressions4.2: Understanding sed Basics4.3: Performing Advanced sed Operations4.4: Understanding awk Basics4.5: Performing Advanced awk OperationsExercise 4Exercise 4 SolutionLesson 5: Analyzing Advanced Scripts5.1: Analyzing the Structure5.2: Analyzing the Parts in the Script5.3: Analyzing the /etc/init.d/network Script5.4: Analyzing the /etc/profile ScriptExercise 5Exercise 5 SolutionLesson 6: Writing a Complex Script 6.1: Defining the Mission Statement6.2: Creating the Script Structure6.3: Writing the Code6.4: Considering Next Steps Part 16.4: Considering Next Steps Part 26.5: Implementing Next StepsExercise 6Exercise 6 Solution (Part 1)Exercise 6 Solution (Part 2)Lesson 7: Scripting for Performance7.1: Optimizing Loops7.2: Minimizing File Writes7.3: Minimizing External Command Usage7.4: Avoiding Useless Commands (cat /etc/passwd | grep root)7.5: Minimizing Operations7.6: Analyzing Script Performance with time7.7: Analyzing Script Performance with straceExercise 7Exercise 7 SolutionLesson 8: Beyond Bash; Scripting in Python8.1: Comparing Bash to Python8.2: Programming in Python8.3: Writing your First Python Script8.4: Working with Arguments8.5: Using Indentation8.6: Interactive Python8.7: Writing Output to FilesExercise 8Exercise 8 Solution