Přeskočit na obsah
Hacky & Tipy

10 bash triků, co vám ušetří hodiny práce

8 min čtení
BashLinuxTerminalProduktivita

Většina vývojářů používá bash každý den, ale využívá sotva 10 % jeho možností. Tady je 10 triků, které vám reálně ušetří hodiny práce týdně.

1. Reverse history search (Ctrl+R)

Místo šipky nahoru stokrát — stiskněte Ctrl+R a začněte psát část příkazu. Bash prohledá historii a nabídne nejnovější shodu.

# Ctrl+R → "docker" → najde poslední docker příkaz
(reverse-i-search)`docker': docker compose up -d

2. Brace expansion

Vytvořte víc souborů nebo adresářů najednou:

mkdir -p project/{src,test,docs,config}
touch app.{js,css,html}
cp config.yml{,.backup}

3. Process substitution

Porovnání výstupů dvou příkazů bez dočasných souborů:

diff <(sort file1.txt) <(sort file2.txt)
diff <(kubectl get pods -n staging) <(kubectl get pods -n production)

4. Xargs pro paralelní zpracování

find . -name "*.jpg" | xargs -P 8 -I {} convert {} -resize 50% {}
cat urls.txt | xargs -P 10 -I {} curl -sO {}

5. Bang operátory

!! zopakuje poslední příkaz. !$ vezme poslední argument. !^ první argument.

sudo !! # zopakuje poslední příkaz se sudo
mkdir /tmp/test && cd !$ # cd do právě vytvořeného adresáře

6. Heredoc pro multi-line stringy

cat << 'EOF' > config.json
{
"host": "localhost",
"port": 5432
}
EOF

7. Trap pro cleanup

tmpfile=$(mktemp)
trap "rm -f $tmpfile" EXIT
# tmpfile se vždy smaže

8. Parameter expansion

file="photo.backup.tar.gz"
echo ${file%.tar.gz} # photo.backup
echo ${file##*.} # gz
echo ${file,,} # lowercase
echo ${file^^} # UPPERCASE

9. Set -euo pipefail

Tři řádky na začátek každého skriptu:

#!/bin/bash
set -euo pipefail
IFS=$'\n\t'

10. Rychlé kalkulace

echo $((1024 * 1024)) # 1048576
printf "%'d\n" 1000000 # 1,000,000
echo "scale=2; 100/3" | bc # 33.33

Shrnutí

Každý týden si vyberte jeden nový trik a používejte ho, dokud se nestane automatickým. Za měsíc budete v terminálu 2× rychlejší.

CORE SYSTEMS tým

Enterprise architekti a DevOps inženýři. Stavíme systémy, které fungují.