Introduction to Bash scripting

This 3-day hands-on course introduces participants to Bash scripting for task automation and system administration. From writing simple scripts to managing processes, securing code, and working over SSH, you’ll learn practical skills to boost productivity and control over your Linux environment. Perfect for devs, sysadmins, and security pros.


Laravel security

Program:

Day 1 - Introduction to Bash and file manipulation

Introduction to Bash
  • What is Bash?
  • Why Learn Bash?
  • Basic commands
Writing and Running Bash scripts
  • What is a Bash script?
  • Create and execute a script
  • The shebang
  • Grant permissions
  • Run the script
Variables and arguments
  • Understanding variables
  • Declaring and using variables
  • Command line arguments in scripts
File and directory operations
  • Creating and manipulating files/directories
Permissions and access rights
  • Understanding Linux file permissions
  • View permissions
  • Changing permissions
Redirection and pipelines
  • Output and error redirection
  • Using pipelines

Day 2 - Control structures, functions, and advanced scripting

Conditional statements
  • What are conditional statements?
  • if-else statements
  • case statements
Loops (for, while, until)
  • for loops
  • while loops
  • until loops
Functions in Bash
  • Why use functions?
  • Defining and calling functions
Handling user input and arguments
  • Reading user input
  • Script arguments
Debugging and error handling
  • Debugging
  • Handling errors
  • Handle script interruptions

Day 3 - Process management, automation, and security

Process management in Bash
  • Understanding processes in Linux
  • Viewing processes
Scheduling tasks
  • Automating tasks
  • Cron job format
Logging and monitoring scripts
  • Logging
  • Checking system logs
Handling signals and traps
  • What are signals?
  • How to handle signals
Securing Bash scripts
  • File permissions and execution restrictions
  • Validating user input
  • Using sudo securely
Working with remote servers and SSH
  • Connect to a remote server
  • Copying files securely
  • Automating SSH tasks



Gwendal Le Coguic - contact@glc.st - quotes on request - SIRET 79778302400038