Вернуться в блог

Как создавать псевдонимы оболочки для длинных команд

2026-01-313 min read

Если вы ежедневно пользуетесь терминалом, вы, вероятно, много раз вводили одни и те же длинные команды. Алиасы оболочки (shell aliases) позволяют создавать короткие псевдонимы, чтобы избежать повторений.

Проблема

Я регулярно использую Claude Code и иногда мне нужно запускать его с флагом --dangerously-skip-permissions. Постоянно вводить это утомительно:

claude --dangerously-skip-permissions

Это 42 символа. Мне хотелось чего-то, что можно было бы набрать, не задумываясь.

Простое решение: алиасы

Самый быстрый способ — использовать обычный алиас оболочки. Добавьте это в ваш файл ~/.zshrc (или ~/.bashrc, если вы используете bash):

# Сокращения для Claude
alias cl="claude"
alias cld="claude --dangerously-skip-permissions"

Затем перезагрузите вашу оболочку:

source ~/.zshrc

Вот и всё. Теперь:

  • cl запускает claude (2 символа вместо 6)
  • cld запускает claude --dangerously-skip-permissions (3 символа вместо 42)

Оба варианта также принимают дополнительные аргументы. cld -m "fix the bug" будет работать точно так же, как claude --dangerously-skip-permissions -m "fix the bug".

Прежде чем выбрать имя: проверьте конфликты

Прежде чем создавать алиас, убедитесь, что это имя еще не занято другой командой в вашей системе:

which cl 2>/dev/null
which cld 2>/dev/null
type cl 2>/dev/null
type cld 2>/dev/null

Если ничего не выводится, значит, имя свободно. Избегайте переопределения встроенных команд, таких как cd, ls или rm, если вы точно не знаете, что делаете.

Когда нужен больший контроль: функции

Алиасы отлично подходят для простого сопоставления. Но что, если вам нужна подкоманда вроде claude danger? Алиасы не поддерживают пробелы в именах. Для этого вам понадобится функция оболочки:

claude() {
if [[ "$1" == "danger" ]]; then
shift
command claude --dangerously-skip-permissions "$@"
else
command claude "$@"
fi
}

Это перехватывает первый аргумент. Если это danger, он заменяет его полным флагом. В противном случае он передает все остальное настоящему бинарному файлу claude без изменений.

Ключевое слово command здесь важно. Оно указывает оболочке вызвать фактический исполняемый файл, а не рекурсивно вызывать саму функцию.

В итоге я остановился на более простом варианте с алиасами cl и cld. Меньше нажатий клавиш — лучше.

Примеры использования

# Запустить claude в обычном режиме
cl

# Запустить claude в опасном режиме
cld

# Передать дополнительные аргументы
cld -m "fix the auth bug"
cl -m "explain this function"

Примените шаблон ко всему

Это работает для любой команды, которую вы вводите часто:

# Сокращения для Docker
alias dc="docker compose"
alias dcu="docker compose up -d"
alias dcd="docker compose down"

# Сокращения для Git
alias gs="git status"
alias gp="git push"
alias gl="git log --oneline -10"

Начните с команд, которые вы вводите чаще всего. Выполните history | awk '{print $2}' | sort | uniq -c | sort -rn | head -10, чтобы найти самые используемые команды, и создайте алиасы для самых длинных из них.

Алиасы оболочки — один из самых простых способов повысить продуктивность в терминале. Три символа вместо сорока двух быстро дают ощутимый результат.

Будьте в курсе

Получайте последние посты и аналитику на вашу почту.

Unsubscribe anytime. No spam, ever.