{"id":"b6806f6e-be36-475c-9701-b2c25206ec88","shortId":"f3DpQE","kind":"skill","title":"bash-linux","tagline":"Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems.","description":"# Bash Linux Patterns\n\n> Essential patterns for Bash on Linux/macOS.\n\n---\n\n## 1. Operator Syntax\n\n### Chaining Commands\n\n| Operator | Meaning | Example |\n|----------|---------|---------|\n| `;` | Run sequentially | `cmd1; cmd2` |\n| `&&` | Run if previous succeeded | `npm install && npm run dev` |\n| `\\|\\|` | Run if previous failed | `npm test \\|\\| echo \"Tests failed\"` |\n| `\\|` | Pipe output | `ls \\| grep \".js\"` |\n\n---\n\n## 2. File Operations\n\n### Essential Commands\n\n| Task | Command |\n|------|---------|\n| List all | `ls -la` |\n| Find files | `find . -name \"*.js\" -type f` |\n| File content | `cat file.txt` |\n| First N lines | `head -n 20 file.txt` |\n| Last N lines | `tail -n 20 file.txt` |\n| Follow log | `tail -f log.txt` |\n| Search in files | `grep -r \"pattern\" --include=\"*.js\"` |\n| File size | `du -sh *` |\n| Disk usage | `df -h` |\n\n---\n\n## 3. Process Management\n\n| Task | Command |\n|------|---------|\n| List processes | `ps aux` |\n| Find by name | `ps aux \\| grep node` |\n| Kill by PID | `kill -9 <PID>` |\n| Find port user | `lsof -i :3000` |\n| Kill port | `kill -9 $(lsof -t -i :3000)` |\n| Background | `npm run dev &` |\n| Jobs | `jobs -l` |\n| Bring to front | `fg %1` |\n\n---\n\n## 4. Text Processing\n\n### Core Tools\n\n| Tool | Purpose | Example |\n|------|---------|---------|\n| `grep` | Search | `grep -rn \"TODO\" src/` |\n| `sed` | Replace | `sed -i 's/old/new/g' file.txt` |\n| `awk` | Extract columns | `awk '{print $1}' file.txt` |\n| `cut` | Cut fields | `cut -d',' -f1 data.csv` |\n| `sort` | Sort lines | `sort -u file.txt` |\n| `uniq` | Unique lines | `sort file.txt \\| uniq -c` |\n| `wc` | Count | `wc -l file.txt` |\n\n---\n\n## 5. Environment Variables\n\n| Task | Command |\n|------|---------|\n| View all | `env` or `printenv` |\n| View one | `echo $PATH` |\n| Set temporary | `export VAR=\"value\"` |\n| Set in script | `VAR=\"value\" command` |\n| Add to PATH | `export PATH=\"$PATH:/new/path\"` |\n\n---\n\n## 6. Network\n\n| Task | Command |\n|------|---------|\n| Download | `curl -O https://example.com/file` |\n| API request | `curl -X GET https://api.example.com` |\n| POST JSON | `curl -X POST -H \"Content-Type: application/json\" -d '{\"key\":\"value\"}' URL` |\n| Check port | `nc -zv localhost 3000` |\n| Network info | `ifconfig` or `ip addr` |\n\n---\n\n## 7. Script Template\n\n```bash\n#!/bin/bash\nset -euo pipefail  # Exit on error, undefined var, pipe fail\n\n# Colors (optional)\nRED='\\033[0;31m'\nGREEN='\\033[0;32m'\nNC='\\033[0m'\n\n# Script directory\nSCRIPT_DIR=\"$(cd \"$(dirname \"${BASH_SOURCE[0]}\")\" && pwd)\"\n\n# Functions\nlog_info() { echo -e \"${GREEN}[INFO]${NC} $1\"; }\nlog_error() { echo -e \"${RED}[ERROR]${NC} $1\" >&2; }\n\n# Main\nmain() {\n    log_info \"Starting...\"\n    # Your logic here\n    log_info \"Done!\"\n}\n\nmain \"$@\"\n```\n\n---\n\n## 8. Common Patterns\n\n### Check if command exists\n\n```bash\nif command -v node &> /dev/null; then\n    echo \"Node is installed\"\nfi\n```\n\n### Default variable value\n\n```bash\nNAME=${1:-\"default_value\"}\n```\n\n### Read file line by line\n\n```bash\nwhile IFS= read -r line; do\n    echo \"$line\"\ndone < file.txt\n```\n\n### Loop over files\n\n```bash\nfor file in *.js; do\n    echo \"Processing $file\"\ndone\n```\n\n---\n\n## 9. Differences from PowerShell\n\n| Task | PowerShell | Bash |\n|------|------------|------|\n| List files | `Get-ChildItem` | `ls -la` |\n| Find files | `Get-ChildItem -Recurse` | `find . -type f` |\n| Environment | `$env:VAR` | `$VAR` |\n| String concat | `\"$a$b\"` | `\"$a$b\"` (same) |\n| Null check | `if ($x)` | `if [ -n \"$x\" ]` |\n| Pipeline | Object-based | Text-based |\n\n---\n\n## 10. Error Handling\n\n### Set options\n\n```bash\nset -e          # Exit on error\nset -u          # Exit on undefined variable\nset -o pipefail # Exit on pipe failure\nset -x          # Debug: print commands\n```\n\n### Trap for cleanup\n\n```bash\ncleanup() {\n    echo \"Cleaning up...\"\n    rm -f /tmp/tempfile\n}\ntrap cleanup EXIT\n```\n\n---\n\n> **Remember:** Bash is text-based. Use `&&` for success chains, `set -e` for safety, and quote your variables!\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["bash","linux","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-bash-linux","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/bash-linux","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 37911 github stars · SKILL.md body (4,359 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:50:41.396Z","embedding":null,"createdAt":"2026-04-18T20:33:40.230Z","updatedAt":"2026-05-18T18:50:41.396Z","lastSeenAt":"2026-05-18T18:50:41.396Z","tsv":"'-9':142,152 '/bin/bash':299 '/dev/null':375 '/file':262 '/new/path':252 '/tmp/tempfile':506 '0':314,318,331 '033':313,317,321 '0m':322 '1':30,168,194,341,349,387 '10':467 '2':65,350 '20':92,99 '3':122 '3000':148,156,288 '31m':315 '32m':319 '4':169 '5':221 '6':253 '7':295 '8':363 '9':419 'action':540 'add':246 'addr':294 'api':263 'api.example.com':268 'applic':534 'application/json':278 'ask':578 'aux':130,135 'awk':189,192 'b':449,451 'background':157 'base':463,466,515 'bash':2,21,27,298,329,370,385,395,409,425,472,499,511 'bash-linux':1 'bash/linux':4 'boundari':586 'bring':164 'c':215 'cat':85 'cd':327 'chain':33,519 'check':283,366,454 'childitem':430,437 'clarif':580 'clean':502 'cleanup':498,500,508 'clear':553 'cmd1':40 'cmd2':41 'color':310 'column':191 'command':8,34,69,71,126,225,245,256,368,372,495 'common':364 'concat':447 'content':84,276 'content-typ':275 'core':172 'count':217 'criteria':589 'critic':7 'curl':258,265,271 'cut':196,197,199 'd':200,279 'data.csv':202 'debug':493 'default':382,388 'describ':541,557 'dev':50,160 'df':120 'differ':420 'dir':326 'directori':324 'dirnam':328 'disk':118 'done':361,404,418 'download':257 'du':116 'e':337,345,474,521 'echo':57,233,336,344,377,402,415,501 'env':228,443 'environ':222,442,569 'environment-specif':568 'error':10,305,343,347,468,477 'essenti':24,68 'euo':301 'exampl':37,176 'example.com':261 'example.com/file':260 'execut':536 'exist':369 'exit':303,475,480,487,509 'expert':574 'export':237,249 'extract':190 'f':82,104,441,505 'f1':201 'fail':54,59,309 'failur':490 'fg':167 'fi':381 'field':198 'file':66,77,83,108,114,391,408,411,417,427,434 'file.txt':86,93,100,188,195,208,213,220,405 'find':76,78,131,143,433,439 'first':87 'follow':101 'front':166 'function':333 'get':267,429,436 'get-childitem':428,435 'green':316,338 'grep':63,109,136,177,179 'h':121,274 'handl':11,469 'head':90 'if':397 'ifconfig':291 'includ':112 'info':290,335,339,354,360 'input':583 'instal':47,380 'ip':293 'job':161,162 'js':64,80,113,413 'json':270 'key':280 'kill':138,141,149,151 'l':163,219 'la':75,432 'last':94 'limit':545 'line':89,96,205,211,392,394,400,403 'linux':3,19,22 'linux/macos':29 'list':72,127,426 'localhost':287 'log':102,334,342,353,359 'log.txt':105 'logic':357 'loop':406 'ls':62,74,431 'lsof':146,153 'maco':17 'main':351,352,362 'manag':124 'match':554 'mean':36 'miss':591 'n':88,91,95,98,458 'name':79,133,386 'nc':285,320,340,348 'network':254,289 'node':137,374,378 'npm':46,48,55,158 'null':453 'o':259,485 'object':462 'object-bas':461 'one':232 'oper':31,35,67 'option':311,471 'output':61,563 'overview':544 'path':234,248,250,251 'pattern':6,23,25,111,365 'permiss':584 'pid':140 'pipe':9,60,308,489 'pipefail':302,486 'pipelin':460 'port':144,150,284 'post':269,273 'powershel':422,424 'previous':44,53 'print':193,494 'printenv':230 'process':123,128,171,416 'ps':129,134 'purpos':175 'pwd':332 'quot':525 'r':110,399 'read':390,398 'recurs':438 'red':312,346 'rememb':510 'replac':184 'request':264 'requir':582 'review':575 'rm':504 'rn':180 'run':38,42,49,51,159 's/old/new/g':187 'safeti':523,585 'scope':556 'script':12,242,296,323,325 'search':106,178 'sed':183,185 'sequenti':39 'set':235,240,300,470,473,478,484,491,520 'sh':117 'size':115 'skill':532,548 'skill-bash-linux' 'sort':203,204,206,212 'sourc':330 'source-sickn33' 'specif':570 'src':182 'start':355 'stop':576 'string':446 'substitut':566 'succeed':45 'success':518,588 'syntax':32 'system':20 'tail':97,103 'task':70,125,224,255,423,552 'templat':297 'temporari':236 'termin':5 'test':56,58,572 'text':170,465,514 'text-bas':464,513 'todo':181 'tool':173,174 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'trap':496,507 'treat':561 'type':81,277,440 'u':207,479 'undefin':306,482 'uniq':209,214 'uniqu':210 'url':282 'usag':119 'use':13,516,530,546 'user':145 'v':373 'valid':571 'valu':239,244,281,384,389 'var':238,243,307,444,445 'variabl':223,383,483,527 'view':226,231 'wc':216,218 'work':15 'workflow':538 'x':266,272,456,459,492 'zv':286","prices":[{"id":"ad1fccd3-6ebb-497e-8f32-69a2d381c6f5","listingId":"b6806f6e-be36-475c-9701-b2c25206ec88","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T20:33:40.230Z"}],"sources":[{"listingId":"b6806f6e-be36-475c-9701-b2c25206ec88","source":"github","sourceId":"sickn33/antigravity-awesome-skills/bash-linux","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/bash-linux","isPrimary":false,"firstSeenAt":"2026-04-18T21:33:24.803Z","lastSeenAt":"2026-05-18T18:50:41.396Z"},{"listingId":"b6806f6e-be36-475c-9701-b2c25206ec88","source":"skills_sh","sourceId":"sickn33/antigravity-awesome-skills/bash-linux","sourceUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/bash-linux","isPrimary":true,"firstSeenAt":"2026-04-18T20:33:40.230Z","lastSeenAt":"2026-05-07T22:40:36.356Z"}],"details":{"listingId":"b6806f6e-be36-475c-9701-b2c25206ec88","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"bash-linux","github":{"repo":"sickn33/antigravity-awesome-skills","stars":37911,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-05-18T08:24:49Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"456b77a4be24ab3131128442fa09b9949fad542f","skill_md_path":"skills/bash-linux/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/bash-linux"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"bash-linux","description":"Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/bash-linux"},"updatedAt":"2026-05-18T18:50:41.396Z"}}