Hoe u shell-aliassen maakt voor langere commando's
Als je dagelijks de terminal gebruikt, heb je waarschijnlijk dezelfde lange commando's keer op keer getypt. Shell-aliassen stellen je in staat om snelkoppelingen te maken, zodat je niet steeds hetzelfde hoeft te herhalen.
Het probleem
Ik gebruik Claude Code regelmatig, en soms moet ik het uitvoeren met de vlag --dangerously-skip-permissions. Dit elke keer typen wordt snel vervelend:
claude --dangerously-skip-permissions
Dat zijn 42 tekens. Ik wilde iets kunnen typen zonder erbij na te denken.
De eenvoudige oplossing: aliassen
De snelste oplossing is een eenvoudige shell-alias. Voeg dit toe aan je ~/.zshrc (of ~/.bashrc als je bash gebruikt):
# Claude snelkoppelingen
alias cl="claude"
alias cld="claude --dangerously-skip-permissions"
Laad vervolgens je shell opnieuw:
source ~/.zshrc
Dat is alles. Nu:
clvoertclaudeuit (2 tekens in plaats van 6)cldvoertclaude --dangerously-skip-permissionsuit (3 tekens in plaats van 42)
Beide accepteren ook extra argumenten. cld -m "fix the bug" werkt precies hetzelfde als claude --dangerously-skip-permissions -m "fix the bug".
Controleer op conflicten voordat je een naam kiest
Voordat je een alias aanmaakt, moet je ervoor zorgen dat de naam niet al in gebruik is door een ander commando op je systeem:
which cl 2>/dev/null
which cld 2>/dev/null
type cl 2>/dev/null
type cld 2>/dev/null
Als er niets terugkomt, is de naam vrij. Vermijd het overschrijven van ingebouwde commando's zoals cd, ls of rm, tenzij je precies weet wat je doet.
Wanneer je meer controle nodig hebt: functies
Aliassen werken prima voor eenvoudige koppelingen. Maar wat als je een subcommando wilt zoals claude danger? Aliassen ondersteunen geen spaties in namen. Daarvoor heb je een shell-functie nodig:
claude() {
if [[ "$1" == "danger" ]]; then
shift
command claude --dangerously-skip-permissions "$@"
else
command claude "$@"
fi
}
Dit onderschept het eerste argument. Als het danger is, vervangt het dit door de volledige vlag. Anders stuurt het alles ongewijzigd door naar de echte claude binaire code.
Het trefwoord command is hier belangrijk. Het vertelt de shell om de daadwerkelijke binaire code aan te roepen in plaats van recursief de functie aan te roepen.
Ik heb uiteindelijk toch gekozen voor de eenvoudigere cl en cld aliassen. Minder toetsaanslagen wint.
Gebruiksvoorbeelden
# Start claude normaal
cl
# Start claude in gevaarlijke modus
cld
# Extra argumenten doorgeven
cld -m "fix de auth bug"
cl -m "verklaar deze functie"
Pas het patroon toe op alles
Dit werkt voor elk commando dat je vaak typt:
# Docker snelkoppelingen
alias dc="docker compose"
alias dcu="docker compose up -d"
alias dcd="docker compose down"
# Git snelkoppelingen
alias gs="git status"
alias gp="git push"
alias gl="git log --oneline -10"
Begin met de commando's die je het meest gebruikt. Voer history | awk '{print $2}' | sort | uniq -c | sort -rn | head -10 uit om je meest gebruikte commando's te vinden en de langste te voorzien van een alias.
Shell-aliassen zijn een van de eenvoudigste manieren om productiever te zijn in de terminal. Drie tekens in plaats van tweeënveertig telt snel op.