Skip to main content

bash-linux

Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems.

Aller à l'installation

Informations de source

Dépôt
JantonioFC/skillsbank
Dernière activité de la source
4 août 2026 à 03:07
Langue détectée de SKILL.md
anglais
Étoiles
6
Forks
0

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
bash-linux
description
Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Use when working on macOS or Linux systems.
allowed-tools
Read, Write, Edit, Glob, Grep, Bash
risk
safe
source
community
license
MIT
# Bash Linux Patterns > Essential patterns for Bash on Linux/macOS. --- ## 1. Operator Syntax ### Chaining Commands | Operator | Meaning | Example | |----------|---------|---------| | `;` | Run sequentially | `cmd1; cmd2` | | `&&` | Run if previous succeeded | `npm install && npm run dev` | | `\|\|` | Run if previous failed | `npm test \|\| echo "Tests failed"` | | `\|` | Pipe output | `ls \| grep ".js"` | --- ## 2. File Operations ### Essential Commands | Task | Command | |------|---------| | List all | `ls -la` | | Find files | `find . -name "*.js" -type f` | | File content | `cat file.txt` | | First N lines | `head -n 20 file.txt` | | Last N lines | `tail -n 20 file.txt` | | Follow log | `tail -f log.txt` | | Search in files | `grep -r "pattern" --include="*.js"` | | File size | `du -sh *` | | Disk usage | `df -h` | --- ## 3. Process Management | Task | Command | |------|---------| | List processes | `ps aux` | | Find by name | `ps aux \| grep node` | | Kill by PID | `kill -9 <PID>` | | Find port user | `lsof -i :3000` | | Kill port | `kill -9 $(lsof -t -i :3000)` | | Background | `npm run dev &` | | Jobs | `jobs -l` | | Bring to front | `fg %1` | --- ## 4. Text Processing ### Core Tools | Tool | Purpose | Example | |------|---------|---------| | `grep` | Search | `grep -rn "TODO" src/` | | `sed` | Replace | `sed -i 's/old/new/g' file.txt` | | `awk` | Extract columns | `awk '{print $1}' file.txt` | | `cut` | Cut fields | `cut -d',' -f1 data.csv` | | `sort` | Sort lines | `sort -u file.txt` | | `uniq` | Unique lines | `sort file.txt \| uniq -c` | | `wc` | Count | `wc -l file.txt` | --- ## 5. Environment Variables | Task | Command | |------|---------| | View all | `env` or `printenv` | | View one | `echo $PATH` | | Set temporary | `export VAR="value"` | | Set in script | `VAR="value" command` | | Add to PATH | `export PATH="$PATH:/new/path"` | --- ## 6. Network | Task | Command | |------|---------| | Download | `curl -O https://example.com/file` | | API request | `curl -X GET https://api.example.com` | | POST JSON | `curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL` | | Check port | `nc -zv localhost 3000` | | Network info | `ifconfig` or `ip addr` | --- ## 7. Script Template ```bash #!/bin/bash set -euo pipefail # Exit on error, undefined var, pipe fail # Colors (optional) RED='\033[0;31m' GREEN='\033[0;32m' NC='\033[0m' # Script directory SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" # Functions log_info() { echo -e "${GREEN}[INFO]${NC} $1"; } log_error() { echo -e "${RED}[ERROR]${NC} $1" >&2; } # Main main() { log_info "Starting..." # Your logic here log_info "Done!" } main "$@" ``` --- ## 8. Common Patterns ### Check if command exists ```bash if command -v node &> /dev/null; then echo "Node is installed" fi ``` ### Default variable value ```bash NAME=${1:-"default_value"} ``` ### Read file line by line ```bash while IFS= read -r line; do echo "$line" done < file.txt ``` ### Loop over files ```bash for file in *.js; do echo "Processing $file" done ``` --- ## 9. Differences from PowerShell | Task | PowerShell | Bash | |------|------------|------| | List files | `Get-ChildItem` | `ls -la` | | Find files | `Get-ChildItem -Recurse` | `find . -type f` | | Environment | `$env:VAR` | `$VAR` | | String concat | `"$a$b"` | `"$a$b"` (same) | | Null check | `if ($x)` | `if [ -n "$x" ]` | | Pipeline | Object-based | Text-based | --- ## 10. Error Handling ### Set options ```bash set -e # Exit on error set -u # Exit on undefined variable set -o pipefail # Exit on pipe failure set -x # Debug: print commands ``` ### Trap for cleanup ```bash cleanup() { echo "Cleaning up..." rm -f /tmp/tempfile } trap cleanup EXIT ``` --- > **Remember:** Bash is text-based. Use `&&` for success chains, `set -e` for safety, and quote your variables! ## When to Use Bash/Linux terminal patterns. Critical commands, piping, error handling, scripting. Covers: Bash Linux Patterns, Operator Syntax, Chaining Commands, File Operations, Essential Commands.
Voir sur GitHub