├── .github └── workflows │ └── jekyll-gh-pages.yml ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── SECURITY.md ├── Tutorial-Files ├── 01.Introduction-to-Bash │ ├── 01.What is Bash.md │ └── 02.Importance of shell scripting in automation.md ├── 02.Basic-Commands │ ├── 01.Basic_Commands.md │ └── 02.Understanding_file_permissions.md ├── 03.Variables-and-Data-Types │ ├── 01.Declaring_and_using_variables.md │ ├── 02.String_manipulation.md │ └── 03.Numeric_Operations.md ├── 04.Conditional-Statements │ ├── 01.if_elif_else_statements.md │ └── 02.Case_statements.md ├── 05.Loops │ ├── 01.for_while_until_loops.md │ └── 02.Loop_control statements_(break, continue).md ├── 06.Functions │ ├── 01.Defining_and_using_functions.md │ ├── 02.Passing_arguments_to_functions.md │ └── 03.Returning_values_from_functions.md ├── 07.Arrays │ ├── 01.Declaring_and_accessing_arrays.md │ └── 02.Array_manipulation.md ├── 08.File-Handling │ ├── 01.Reading_from_and_writing_to_files.md │ ├── 02.Checking_file_existence_and_type.md │ └── 03.File_manipulation_commands_(sed, awk).md ├── 09.Input_Output-Redirection │ ├── 01.Redirecting_standard_input_and_output.md │ └── 02.Using_pipes_for_command_chaining.md ├── 10.Regular-Expressions │ ├── 01.Basic_regex_patterns.md │ └── 02.grep, sed, and awk for pattern matching and text processing.md ├── 11.Error-Handling │ ├── 01.Handling_errors_with_exit_codes.md │ └── 02.Using_trap_for_signal_handling.md ├── 12.Environment-Variables │ ├── 01.Built-in_environment_variables.md │ └── 02.Custom_environment_variables.md ├── 13.Debugging-Techniques │ ├── 01.Using_echo_and_printf_for_debugging.md │ └── 02.Setting_and_using_breakpoints.md ├── 14.Advanced-Scripting-Techniques │ ├── 01.Managing_processes (ps, kill, jobs).md │ ├── 02.Job_scheduling_with_cron.md │ └── 03.Signal_handling.md ├── 15.Security-Best-Practices │ ├── 01.Writing_secure_scripts.md │ └── 02.Avoiding_common_pitfalls.md ├── 16.Interacting-with-External-Commands │ ├── 01.Running external commands from scripts.md │ └── 02.Capturing and using command output.md ├── 17.Real-world-Examples │ ├── 01.Practical scripts for common tasks (log analysis, data processing, system monitoring).md │ └── 02.Integration with other tools and technologies.md ├── 19.Best-Practices │ ├── 01.Coding standards.md │ └── 02.Code reviews and collaboration.md ├── 19.Conclusion.md └── Linux-cheat-sheet.md └── cheatsheet-18.md /.github/workflows/jekyll-gh-pages.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/.github/workflows/jekyll-gh-pages.yml -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/README.md -------------------------------------------------------------------------------- /SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/SECURITY.md -------------------------------------------------------------------------------- /Tutorial-Files/01.Introduction-to-Bash/01.What is Bash.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/01.Introduction-to-Bash/01.What is Bash.md -------------------------------------------------------------------------------- /Tutorial-Files/01.Introduction-to-Bash/02.Importance of shell scripting in automation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/01.Introduction-to-Bash/02.Importance of shell scripting in automation.md -------------------------------------------------------------------------------- /Tutorial-Files/02.Basic-Commands/01.Basic_Commands.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/02.Basic-Commands/01.Basic_Commands.md -------------------------------------------------------------------------------- /Tutorial-Files/02.Basic-Commands/02.Understanding_file_permissions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/02.Basic-Commands/02.Understanding_file_permissions.md -------------------------------------------------------------------------------- /Tutorial-Files/03.Variables-and-Data-Types/01.Declaring_and_using_variables.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/03.Variables-and-Data-Types/01.Declaring_and_using_variables.md -------------------------------------------------------------------------------- /Tutorial-Files/03.Variables-and-Data-Types/02.String_manipulation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/03.Variables-and-Data-Types/02.String_manipulation.md -------------------------------------------------------------------------------- /Tutorial-Files/03.Variables-and-Data-Types/03.Numeric_Operations.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/03.Variables-and-Data-Types/03.Numeric_Operations.md -------------------------------------------------------------------------------- /Tutorial-Files/04.Conditional-Statements/01.if_elif_else_statements.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/04.Conditional-Statements/01.if_elif_else_statements.md -------------------------------------------------------------------------------- /Tutorial-Files/04.Conditional-Statements/02.Case_statements.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/04.Conditional-Statements/02.Case_statements.md -------------------------------------------------------------------------------- /Tutorial-Files/05.Loops/01.for_while_until_loops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/05.Loops/01.for_while_until_loops.md -------------------------------------------------------------------------------- /Tutorial-Files/05.Loops/02.Loop_control statements_(break, continue).md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/05.Loops/02.Loop_control statements_(break, continue).md -------------------------------------------------------------------------------- /Tutorial-Files/06.Functions/01.Defining_and_using_functions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/06.Functions/01.Defining_and_using_functions.md -------------------------------------------------------------------------------- /Tutorial-Files/06.Functions/02.Passing_arguments_to_functions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/06.Functions/02.Passing_arguments_to_functions.md -------------------------------------------------------------------------------- /Tutorial-Files/06.Functions/03.Returning_values_from_functions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/06.Functions/03.Returning_values_from_functions.md -------------------------------------------------------------------------------- /Tutorial-Files/07.Arrays/01.Declaring_and_accessing_arrays.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/07.Arrays/01.Declaring_and_accessing_arrays.md -------------------------------------------------------------------------------- /Tutorial-Files/07.Arrays/02.Array_manipulation.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/07.Arrays/02.Array_manipulation.md -------------------------------------------------------------------------------- /Tutorial-Files/08.File-Handling/01.Reading_from_and_writing_to_files.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/08.File-Handling/01.Reading_from_and_writing_to_files.md -------------------------------------------------------------------------------- /Tutorial-Files/08.File-Handling/02.Checking_file_existence_and_type.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/08.File-Handling/02.Checking_file_existence_and_type.md -------------------------------------------------------------------------------- /Tutorial-Files/08.File-Handling/03.File_manipulation_commands_(sed, awk).md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/08.File-Handling/03.File_manipulation_commands_(sed, awk).md -------------------------------------------------------------------------------- /Tutorial-Files/09.Input_Output-Redirection/01.Redirecting_standard_input_and_output.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/09.Input_Output-Redirection/01.Redirecting_standard_input_and_output.md -------------------------------------------------------------------------------- /Tutorial-Files/09.Input_Output-Redirection/02.Using_pipes_for_command_chaining.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/09.Input_Output-Redirection/02.Using_pipes_for_command_chaining.md -------------------------------------------------------------------------------- /Tutorial-Files/10.Regular-Expressions/01.Basic_regex_patterns.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/10.Regular-Expressions/01.Basic_regex_patterns.md -------------------------------------------------------------------------------- /Tutorial-Files/10.Regular-Expressions/02.grep, sed, and awk for pattern matching and text processing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/10.Regular-Expressions/02.grep, sed, and awk for pattern matching and text processing.md -------------------------------------------------------------------------------- /Tutorial-Files/11.Error-Handling/01.Handling_errors_with_exit_codes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/11.Error-Handling/01.Handling_errors_with_exit_codes.md -------------------------------------------------------------------------------- /Tutorial-Files/11.Error-Handling/02.Using_trap_for_signal_handling.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/11.Error-Handling/02.Using_trap_for_signal_handling.md -------------------------------------------------------------------------------- /Tutorial-Files/12.Environment-Variables/01.Built-in_environment_variables.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/12.Environment-Variables/01.Built-in_environment_variables.md -------------------------------------------------------------------------------- /Tutorial-Files/12.Environment-Variables/02.Custom_environment_variables.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/12.Environment-Variables/02.Custom_environment_variables.md -------------------------------------------------------------------------------- /Tutorial-Files/13.Debugging-Techniques/01.Using_echo_and_printf_for_debugging.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/13.Debugging-Techniques/01.Using_echo_and_printf_for_debugging.md -------------------------------------------------------------------------------- /Tutorial-Files/13.Debugging-Techniques/02.Setting_and_using_breakpoints.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/13.Debugging-Techniques/02.Setting_and_using_breakpoints.md -------------------------------------------------------------------------------- /Tutorial-Files/14.Advanced-Scripting-Techniques/01.Managing_processes (ps, kill, jobs).md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/14.Advanced-Scripting-Techniques/01.Managing_processes (ps, kill, jobs).md -------------------------------------------------------------------------------- /Tutorial-Files/14.Advanced-Scripting-Techniques/02.Job_scheduling_with_cron.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/14.Advanced-Scripting-Techniques/02.Job_scheduling_with_cron.md -------------------------------------------------------------------------------- /Tutorial-Files/14.Advanced-Scripting-Techniques/03.Signal_handling.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/14.Advanced-Scripting-Techniques/03.Signal_handling.md -------------------------------------------------------------------------------- /Tutorial-Files/15.Security-Best-Practices/01.Writing_secure_scripts.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/15.Security-Best-Practices/01.Writing_secure_scripts.md -------------------------------------------------------------------------------- /Tutorial-Files/15.Security-Best-Practices/02.Avoiding_common_pitfalls.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/15.Security-Best-Practices/02.Avoiding_common_pitfalls.md -------------------------------------------------------------------------------- /Tutorial-Files/16.Interacting-with-External-Commands/01.Running external commands from scripts.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/16.Interacting-with-External-Commands/01.Running external commands from scripts.md -------------------------------------------------------------------------------- /Tutorial-Files/16.Interacting-with-External-Commands/02.Capturing and using command output.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/16.Interacting-with-External-Commands/02.Capturing and using command output.md -------------------------------------------------------------------------------- /Tutorial-Files/17.Real-world-Examples/01.Practical scripts for common tasks (log analysis, data processing, system monitoring).md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/17.Real-world-Examples/01.Practical scripts for common tasks (log analysis, data processing, system monitoring).md -------------------------------------------------------------------------------- /Tutorial-Files/17.Real-world-Examples/02.Integration with other tools and technologies.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/17.Real-world-Examples/02.Integration with other tools and technologies.md -------------------------------------------------------------------------------- /Tutorial-Files/19.Best-Practices/01.Coding standards.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/19.Best-Practices/01.Coding standards.md -------------------------------------------------------------------------------- /Tutorial-Files/19.Best-Practices/02.Code reviews and collaboration.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/19.Best-Practices/02.Code reviews and collaboration.md -------------------------------------------------------------------------------- /Tutorial-Files/19.Conclusion.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/19.Conclusion.md -------------------------------------------------------------------------------- /Tutorial-Files/Linux-cheat-sheet.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/Tutorial-Files/Linux-cheat-sheet.md -------------------------------------------------------------------------------- /cheatsheet-18.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hegdepavankumar/shell-scripting-tutorial/HEAD/cheatsheet-18.md --------------------------------------------------------------------------------