{"id":16407855,"url":"https://github.com/londheshubham153/shell-scripting-for-devops","last_synced_at":"2025-04-12T01:03:49.620Z","repository":{"id":222105981,"uuid":"751820216","full_name":"LondheShubham153/Shell-Scripting-For-DevOps","owner":"LondheShubham153","description":null,"archived":false,"fork":false,"pushed_at":"2025-02-11T16:09:32.000Z","size":8,"stargazers_count":68,"open_issues_count":6,"forks_count":440,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-12T01:03:44.058Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LondheShubham153.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-02T11:57:54.000Z","updated_at":"2025-04-11T02:20:40.000Z","dependencies_parsed_at":"2025-02-26T21:01:26.384Z","dependency_job_id":null,"html_url":"https://github.com/LondheShubham153/Shell-Scripting-For-DevOps","commit_stats":null,"previous_names":["londheshubham153/shell-scripting-for-devops"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LondheShubham153%2FShell-Scripting-For-DevOps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LondheShubham153%2FShell-Scripting-For-DevOps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LondheShubham153%2FShell-Scripting-For-DevOps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LondheShubham153%2FShell-Scripting-For-DevOps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LondheShubham153","download_url":"https://codeload.github.com/LondheShubham153/Shell-Scripting-For-DevOps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248501863,"owners_count":21114683,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-11T06:14:57.158Z","updated_at":"2025-04-12T01:03:49.600Z","avatar_url":"https://github.com/LondheShubham153.png","language":"Shell","readme":"# Shell Scripting in One Shot – Comprehensive Guide for DevOps\n\n## 1. Introduction to Shell and Environment Setup\n- What is Shell? (Bash, Zsh, Ksh, etc.)\n- Shell vs. Terminal vs. Bash\n- Installing and Setting Up Bash (Linux/macOS/WSL for Windows)\n- Essential Configuration Files (`~/.bashrc`, `~/.bash_profile`, `~/.zshrc`)\n- Setting Up a DevOps-Friendly Shell Environment  \n  - PS1 Prompt Customization  \n  - Useful Aliases and Functions  \n  - Environment Variables (`$PATH`, `$HOME`, `$USER`)  \n\n## 2. Basic Scripting Skills\n- Writing Your First Shell Script (`.sh` file, shebang `#!/bin/bash`)\n- Executing Scripts (`chmod +x script.sh`, `./script.sh`, `bash script.sh`)\n- Variables and Data Types (String, Integer, Arrays)\n- Reading User Input (`read` command)\n- Basic Operators (Arithmetic, Relational, Logical)\n- Control Flow:\n  - Conditional Statements (`if-else`, `case`)\n  - Looping (`for`, `while`, `until`)\n- Functions in Shell Scripts  \n- Exit Codes and Status (`$?`, `exit` command)\n\n## 3. Intermediate Scripting Techniques\n- Working with Files and Directories (`ls`, `cp`, `mv`, `rm`, `mkdir`, `find`)\n- String Manipulation (`sed`, `awk`, `cut`, `tr`)\n- File Permissions and Ownership (`chmod`, `chown`, `umask`)\n- Input and Output Redirection (`\u003e`, `\u003e\u003e`, `\u003c`, `2\u003e`, `\u0026\u003e`)\n- Process Management (`ps`, `top`, `kill`, `nohup`, `\u0026`, `jobs`, `fg`, `bg`)\n- Cron Jobs and Task Automation (`crontab -e`, `at`, `systemd timers`)\n- Working with Logs (`tail -f`, `grep`, `awk` for parsing logs)\n\n## 4. Advanced Scripting and Debugging\n- Writing Robust Scripts with Error Handling (`set -e`, `trap`, `||`, `\u0026\u0026`)\n- Debugging Techniques (`bash -x script.sh`, `set -x`, `set -v`)\n- Regular Expressions and Pattern Matching (`grep -E`, `sed -r`)\n- Advanced File Processing (`awk`, `sed`, `xargs`, `cut`, `paste`)\n- Networking with Shell Scripts (`ping`, `curl`, `wget`, `netstat`, `ss`)\n- Parallel Execution and Background Jobs (`\u0026`, `wait`, `xargs -P`)\n- Working with APIs in Shell Scripts (cURL for REST API calls)\n- Secure Shell Scripting (`ssh`, `scp`, `sftp`, `expect`)\n\n## 5. Real-World Applications and Integration\n- Shell Scripting in DevOps Pipelines (CI/CD Integration)\n- Automating AWS/GCP/Azure Operations (`aws-cli`, `gcloud`, `az-cli`)\n- Automating Kubernetes Tasks (`kubectl`, `helm`, `jq`, `yq`)\n- Writing System Health Checks \u0026 Monitoring Scripts\n- Backup and Restore Automation\n- Log Parsing and Analysis with Shell Scripting\n\n## 6. Shell Mastery and Continuous Learning\n- Writing Modular \u0026 Reusable Shell Scripts  \n- Best Practices for Readable and Maintainable Shell Scripts  \n- Shell Scripting Performance Optimization  \n- Learning Alternative Shells (Zsh, Fish, Dash)  \n- Moving Beyond Shell: When to Use Python, Ansible, or Terraform  \n- Keeping Up with DevOps Industry Trends  \n\n## 7. Projects to Keep Up with the Industry\n- **Automated Log Monitoring \u0026 Alert System**\n  - Parses logs, filters errors, and sends alerts via email or Slack.\n- **Infrastructure Backup Automation**\n  - Automates backup of critical files, databases, or VM snapshots.\n- **CI/CD Pipeline Helper**\n  - Automates repository cloning, testing, and deployment tasks.\n- **System Health Check Script**\n  - Checks CPU, Memory, Disk Usage, Running Services, and Network Status.\n- **Kubernetes Resource Monitor**\n  - Automates collection of Kubernetes cluster metrics for monitoring.\n- **AWS Instance Management Script**\n  - Starts/stops AWS EC2 instances on demand or based on schedule.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flondheshubham153%2Fshell-scripting-for-devops","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flondheshubham153%2Fshell-scripting-for-devops","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flondheshubham153%2Fshell-scripting-for-devops/lists"}