O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Bash Scripting

Video Description

Duration

More than 9 hours of video instruction

Overview

More than 9 hours of video instruction to help you learn bash from the ground up from fundamental scripting concepts to complex scripting techniques.

Description

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.

The video lessons cover the following topics:

  • Bash scripting fundamentals
  • Creating your first shell script
  • Working with variables and parameters
  • Transforming input
  • Using essential external tools
  • Using conditional statements
  • Using advanced scripting options
  • Script debugging and analyzing
  • Scripting by example
  • Advanced Bash Scripting
  • Reviewing basics
  • Scripting best practices
  • Understanding syntax differences
  • Using advanced awk, sed, and regular expressions
  • Analyzing advanced scripts
  • Writing a complex script
  • Scripting for performance
  • Beyond Bash; scripting in Python

About the Instructor

Sander van Vugt is an independent Linux trainer, author, and consultant living in the Netherlands. Sander has written numerous books about different Linux-related topics and many articles for Linux publications around the world. Sander has been teaching Red Hat, Ubuntu, SUSE, and LPI Linux classes since 1994. As a consultant, he specializes in Linux High Availability solutions and Performance Optimization. More information about Sander is on his website at www.sandervanvugt.com.

Skill Level

Beginning to intermediate

What You Will Learn

  • Bash scripting from fundamentals to advanced
  • Real-world scripting examples

Who Should Take This Course

The target audience for this course consists of Linux users and professionals who want to automate tasks in Linux using Bash shell scripts. A secondary target audience consists of IT users and professionals who want to get experience with simple programming languages.

About LiveLessons Video Training

LiveLessons Video Training series publishes hundreds of hands-on, expert-led video tutorials covering a wide selection of technology topics designed to teach you the skills you need to succeed. This professional and personal technology video series features world-leading author instructors published by your trusted technology brands: Addison-Wesley, Cisco Press, IBM Press, Pearson IT Certification, Prentice Hall, Sams, and Que. Topics include IT Certification, Programming, Web Development, Mobile Development, Home and Office Technologies, Business and Management, and more.

View all LiveLessons on InformIT at http://www.informit.com/livelessons.

Table of Contents

  1. Bash Scripting
    1. Introduction 00:00:51
  2. Bash Scripting Fundamantals: Introduction
    1. Introduction 00:01:13
  3. Lesson 1: Creating Your First Shell Script
    1. Learning objectives 00:00:36
    2. 1.1 Why Scripting in Bash Makes Sense 00:02:39
    3. 1.2 Choosing an Editor 00:02:45
    4. 1.3 Core Bash Script Ingredients 00:07:01
    5. 1.4 Storing and Running the Script 00:06:52
    6. 1.5 Using Bash Internal Commands versus External Commands 00:03:27
    7. 1.6 Finding Help About Scripting Components 00:03:30
    8. Exercise 1 00:00:47
    9. Exercise 1 Solution 00:03:52
  4. Lesson 2: Working with Variables and Parameters
    1. Learning objectives 00:00:39
    2. 2.1 About Terminology 00:01:57
    3. 2.2 Using and Defining Variables 00:04:57
    4. 2.3 Defining Variables with the read Command 00:09:14
    5. 2.4 Understanding Variables and Subshells 00:06:23
    6. 2.5 Sourcing 00:06:24
    7. 2.6 Quoting 00:07:32
    8. 2.7 Handling Script Arguments 00:13:57
    9. 2.8 Understanding the Need to Use Shift 00:04:21
    10. 2.9 Using Command Substitution 00:02:14
    11. 2.10 String Verification 00:04:16
    12. 2.11 Using Here Documents 00:05:02
    13. Exercise 2 00:00:44
    14. Exercise 2 Solution 00:01:49
  5. Lesson 3: Transforming Input
    1. Learning objectives 00:00:34
    2. 3.1 Working with Substitution Operators 00:05:34
    3. 3.2 Using Pattern Matching Operators 00:06:41
    4. 3.3 Understanding Regular Expressions 00:03:22
    5. 3.4 Calculating 00:04:43
    6. Exercise 3 00:00:50
    7. Exercise 3 Solution 00:01:47
  6. Lesson 4: Using Essential External Tools
    1. Learning objectives 00:00:29
    2. 4.1 Using grep 00:02:19
    3. 4.2 Using test 00:05:25
    4. 4.3 Using cut and sort 00:04:40
    5. 4.4 Using tail and head 00:01:21
    6. 4.5 Using sed 00:03:40
    7. 4.6 Using awk 00:04:37
    8. 4.7 Using tr 00:01:33
    9. Exercise 4 00:00:52
    10. Exercise 4 Solution 00:01:42
  7. Lesson 5: Using Conditional Statements
    1. Learning objectives 00:00:25
    2. 5.1 Using if then fi 00:03:36
    3. 5.2 Using && and || 00:05:45
    4. 5.3 Using for 00:07:35
    5. 5.4 Using case 00:04:54
    6. 5.5 Using while and until 00:05:33
    7. Exercise 5 00:01:38
    8. Exercise 5 Solution 00:02:38
  8. Lesson 6: Using Advanced Scripting Options
    1. Learning objectives 00:00:28
    2. 6.1 Working with Options 00:05:30
    3. 6.2 Using Functions 00:03:45
    4. 6.3 Working with Arrays 00:04:30
    5. 6.4 Defining Menu Interfaces 00:06:29
    6. 6.5 Using trap 00:02:30
    7. Exercise 6 00:01:13
    8. Exercise 6 Solution 00:07:29
  9. Lesson 7: Script Debugging and Analyzing
    1. Learning objectives 00:00:36
    2. 7.1 Design Considerations 00:03:32
    3. 7.2 Common Analyzing Tools 00:04:00
    4. 7.3 Using bash -x 00:02:00
    5. Exercise 7 00:00:33
    6. Exercise 7 Solution 00:05:57
  10. Lesson 8: Scripting by Example
    1. Learning objectives 00:00:35
    2. 8.1 Monitoring CPU Utilization Part 1 00:10:38
    3. 8.2 Monitoring CPU Utilization Part 2 00:09:03
    4. 8.3 Practicing Calculation 00:07:22
    5. 8.4 Reading an init Script 00:06:28
    6. 8.5 Using a Countdown Script 00:03:34
    7. 8.6 Efficient if then fi 00:04:53
    8. 8.7 Simple Process Monitoring 00:06:38
  11. Summary
    1. Bash Scripting Fundamentals: Summary 00:00:25
  12. Advanced Bash Scripting: Introduction
    1. Introduction 00:01:29
  13. Lesson 1: Reviewing Basics
    1. Learning objectives 00:00:40
    2. 1.1 Using Pattern Matching 00:03:41
    3. 1.2 Using Command Substitution 00:02:52
    4. 1.3 Using Arguments and Variables 00:07:30
    5. 1.4 Using Iteration Structures (Part 1) 00:07:32
    6. 1.5 Using Iteration Structures (Part 2) 00:06:24
    7. 1.6 Using Arrays 00:05:05
    8. 1.7 Using Functions 00:01:28
    9. 1.8 Analyzing Math Script 00:12:27
    10. Exercise 1 00:01:24
    11. Exercise 1 Solution (Part 1) 00:12:54
    12. Exercise 1 Solution (Part 2) 00:05:46
  14. Lesson 2: Scripting Best Practices
    1. Learning objectives 00:00:33
    2. 2.1 Organizing Scripts 00:02:14
    3. 2.2 Working With Include Files 00:03:45
    4. 2.3 Using Internal vs. External Commands 00:02:56
    5. 2.4 Making Shell Scripts More Secure 00:04:59
    6. 2.5 Analyzing Foo Script 00:02:20
    7. 2.6 Analyzing Cd Script 00:02:54
    8. Exercise 2 00:00:25
    9. Exercise 2 Solution 00:05:13
  15. Lesson 3: Understanding Syntax Differences
    1. Learning objectives 00:00:35
    2. 3.1 Understanding the Origins of Bash 00:01:52
    3. 3.2 Using Bourne Style Syntax 00:04:02
    4. 3.3 Using C-Style Syntax 00:03:44
    5. 3.4 Using Different Methods to Test 00:03:17
    6. 3.5 Using Different Methods to Calculate 00:03:21
    7. 3.6 Analyzing Tcsh Script 00:03:59
    8. 3.7 Analyzing Tcsh Script in Bash 00:01:57
    9. Exercise 3 00:00:20
    10. Exercise 3 Solution 00:13:00
  16. Lesson 4: Using Advanced awk, sed, and Regular Expressions
    1. Learning objectives 00:00:39
    2. 4.1 Using Regular Expressions 00:04:52
    3. 4.2 Understanding sed Basics 00:05:31
    4. 4.3 Performing Advanced sed Operations 00:08:29
    5. 4.4 Understanding awk Basics 00:05:36
    6. 4.5 Performing Advanced awk Operations 00:05:38
    7. Exercise 4 00:00:29
    8. Exercise 4 Solution 00:01:53
  17. Lesson 5: Analyzing Advanced Scripts
    1. Learning objectives 00:00:31
    2. 5.1 Analyzing the Structure 00:01:27
    3. 5.2 Analyzing the Parts in the Script 00:01:47
    4. 5.3 Analyzing the /etc/init.d/network Script 00:12:04
    5. 5.4 Analyzing the /etc/profile Script 00:07:26
    6. Exercise 5 00:00:39
    7. Exercise 5 Solution 00:07:32
  18. Lesson 6: Writing a Complex Script
    1. Learning objectives 00:00:22
    2. 6.1 Defining the Mission Statement 00:03:35
    3. 6.2 Creating the Script Structure 00:02:57
    4. 6.3 Writing the Code 00:08:01
    5. 6.4 Considering Next Steps (Part 1) 00:11:17
    6. 6.5 Considering Next Steps (Part 2) 00:07:00
    7. 6.6 Implementing Next Steps 00:02:21
    8. Exercise 6 00:00:49
    9. Exercise 6 Solution (Part 1) 00:12:53
    10. Exercise 6 Solution Part 2 00:14:16
  19. Lesson 7: Scripting for Performance
    1. Learning objectives 00:00:32
    2. 7.1 Optimizing Loops 00:01:48
    3. 7.2 Minimizing File Writes 00:01:56
    4. 7.3 Minimizing External Command Usage 00:03:09
    5. 7.4 Avoiding Useless Commands (cat /etc/passwd | grep root) 00:01:53
    6. 7.5 Minimizing Operations 00:03:32
    7. 7.6 Analyzing Script Performance with time 00:01:57
    8. 7.7 Analyzing Script Performance with strace 00:01:44
    9. Exercise 7 00:00:25
    10. Exercise 7 Solution 00:10:40
  20. Lesson 8: Beyond Bash; Scripting in Python
    1. Learning objectives 00:00:44
    2. 8.1 Comparing Bash to Python 00:03:02
    3. 8.2 Programming in Python 00:02:27
    4. 8.3 Writing your First Python Script 00:01:06
    5. 8.4 Working with Arguments 00:02:07
    6. 8.5 Using Indentation 00:02:37
    7. 8.6 Interactive Python 00:02:13
    8. 8.7 Writing Output to Files 00:02:07
    9. Exercise 8 00:00:37
    10. Exercise 8 Solution 00:01:21
  21. Summary
    1. Advanced Bash Scripting: Summary 00:00:31