Files
dotfiles/dot_config/zsh/config/aliases.zsh
T

204 lines
8.9 KiB
Bash

# ════════════════════════════════════════════════════════════
# Aliases
# ════════════════════════════════════════════════════════════
# ═══ Навигация ═════════════════════════════════════════════
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
# Быстрый переход в часто используемые директории
alias dl='cd ~/Downloads'
alias dt='cd ~/Desktop'
alias doc='cd ~/Documents'
alias dev='cd ~/dev'
# zoxide - умная навигация (если установлен)
if command -v zoxide &>/dev/null; then
alias cd='z' # заменить cd на z
alias cdi='zi' # интерактивный выбор через fzf
alias cdq='zoxide query'
alias cdr='zoxide remove'
fi
# ═══ Списки файлов ═════════════════════════════════════════
# Использовать eza если доступен, иначе ls с цветами
if command -v eza &>/dev/null; then
alias ls='eza --icons --group-directories-first'
alias ll='eza -l --icons --group-directories-first --git'
alias la='eza -la --icons --group-directories-first --git'
alias lt='eza --tree --level=2 --icons'
alias l='eza -lah --icons --group-directories-first --git'
else
alias ls='ls --color=auto --group-directories-first'
alias ll='ls -lh --color=auto --group-directories-first'
alias la='ls -lAh --color=auto --group-directories-first'
alias l='ls -lah --color=auto --group-directories-first'
fi
# ═══ Безопасность ══════════════════════════════════════════
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# ═══ Системные команды ═════════════════════════════════════
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
alias df='df -h'
alias du='du -h'
alias free='free -h'
# ═══ Сеть ══════════════════════════════════════════════════
alias ping='ping -c 5'
alias ports='netstat -tulanp'
# myip определена как функция в functions.zsh (более полная версия)
alias localip="ip -4 addr show | grep -oP '(?<=inet\s)\d+(\.\d+){3}' | grep -v 127.0.0.1"
# Proxy
# Включение прокси (HTTP, HTTPS и SOCKS5h для DNS через прокси)
alias proxy-on='export http_proxy="http://127.0.0.1:7897" https_proxy="http://127.0.0.1:7897" ALL_PROXY="socks5://127.0.0.1:7897" all_proxy="socks5://127.0.0.1:7897" && echo "󰖟 Proxy enabled (127.0.0.1:7897)"'
# Полное отключение всех переменных прокси
alias proxy-off='unset http_proxy https_proxy HTTP_PROXY HTTPS_PROXY all_proxy ALL_PROXY && echo "󰖪 Proxy disabled"'
alias proxy-status='env | grep -i proxy'
# ═══ Git ═══════════════════════════════════════════════════
alias g='git'
alias gs='git status'
alias gst='git --no-pager status' # без пейджера
alias ga='git add'
alias gaa='git add .'
alias gc='git commit'
alias gcm='git commit -m'
alias gp='git push'
alias gpl='git pull'
alias gd='git diff'
alias gco='git checkout'
alias gb='git branch'
alias gl='git log --oneline --graph --decorate'
alias glog='git log --oneline --graph --decorate --all'
# ═══ Docker ════════════════════════════════════════════════
if command -v docker &>/dev/null; then
alias d='docker'
alias dc='docker-compose'
alias dps='docker ps'
alias dpsa='docker ps -a'
alias di='docker images'
alias dex='docker exec -it'
alias dlog='docker logs -f'
alias dstop='docker stop $(docker ps -aq)'
alias drm='docker rm $(docker ps -aq)'
alias drmi='docker rmi $(docker images -q)'
alias dclean='docker system prune -af --volumes'
fi
# ═══ Kubectl ═══════════════════════════════════════════════
if command -v kubectl &>/dev/null; then
alias k='kubectl'
alias kgp='kubectl get pods'
alias kgs='kubectl get services'
alias kgd='kubectl get deployments'
alias kdp='kubectl describe pod'
alias kds='kubectl describe service'
alias kdd='kubectl describe deployment'
alias kl='kubectl logs -f'
alias kex='kubectl exec -it'
fi
# ═══ Ruby (rbenv) ══════════════════════════════════════════
if command -v rbenv &>/dev/null; then
alias rb='ruby'
alias be='bundle exec'
alias bi='bundle install'
alias bu='bundle update'
fi
# ═══ Python ════════════════════════════════════════════════
alias py='python3'
alias pip='pip3'
alias venv='python3 -m venv'
# ═══ Node.js ═══════════════════════════════════════════════
alias ni='npm install'
alias nid='npm install --save-dev'
alias nig='npm install -g'
alias nr='npm run'
alias ns='npm start'
alias nt='npm test'
# ═══ Утилиты ═══════════════════════════════════════════════
alias zshrc='${EDITOR} ~/.config/zsh/.zshrc'
alias reload='source ~/.config/zsh/.zshrc'
alias path='echo $PATH | tr ":" "\n"'
alias h='history'
alias c='clear'
alias x='exit'
alias rsend='sudo rsync -avhP --stats'
alias wakemac='ssh vps "wakeonlan -i 192.168.1.255 FC:34:97:E1:08:E9"'
# ═══ Пользовательские скрипты ══════════════════════════════
alias bm='backup-menu'
alias sp='ssh-pick'
# Использовать bat вместо cat, если установлен
if command -v bat &>/dev/null; then
alias cat='bat'
fi
# Быстрое обновление системы (для разных дистрибутивов)
if command -v apt &>/dev/null; then
alias update='sudo apt update && sudo apt upgrade -y'
elif command -v pacman &>/dev/null; then
alias update='sudo pacman -Syu'
elif command -v dnf &>/dev/null; then
alias update='sudo dnf upgrade -y'
elif command -v zypper &>/dev/null; then
alias update='sudo zypper refresh && sudo zypper update -y'
fi
# Универсальная установка пакетов (для разных дистрибутивов)
if command -v apt &>/dev/null; then
alias install='sudo apt install -y'
elif command -v pacman &>/dev/null; then
alias install='sudo pacman -S --noconfirm'
elif command -v dnf &>/dev/null; then
alias install='sudo dnf install -y'
elif command -v zypper &>/dev/null; then
alias install='sudo zypper install -y'
fi
# ═══ Прочее ════════════════════════════════════════════════
alias cheat='curl cheat.sh'
alias timer='echo "Timer started. Stop with Ctrl-D." && date && time cat && date'
alias lidon='sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target'
alias lidoff='sudo systemctl unmask sleep.target suspend.target hibernate.target hybrid-sleep.target'
# alias gemini='NODE_NO_WARNINGS=1 npx @google/gemini-cli'
alias sshvpn='sshuttle --dns -r fl-vps 0/0 -X ~/.dotfiles/configs/.exclude-ip.txt'
alias sshp-fg='ssh -D 127.0.0.1:1080 fl-vps -v sleep 9999'
alias gbackup='git add . && git commit -m "backup: $(date +"%Y-%m-%d %H:%M")" && git push && git remote get-url upstream &>/dev/null && git push upstream || true'
alias db_rev='rails db:drop && rails db:create && rails db:migrate && rails db:seed'
alias zed='zeditor'
alias dotfiles='$VISUAL ~/dotfiles'
alias ua-drop-caches='sudo paccache -rk3; paru -Sc --noconfirm'
alias ua-update-all='export TMPFILE="$(mktemp)"; \
sudo true; \
rate-mirrors --save=$TMPFILE arch --max-delay=21600 \
&& sudo mv /etc/pacman.d/mirrorlist /etc/pacman.d/mirrorlist-backup \
&& sudo mv $TMPFILE /etc/pacman.d/mirrorlist \
&& paru -Syyu --noconfirm \
&& ua-drop-caches'
alias codex='proxy-on && codex'
alias claude='proxy-on && claude'
alias opencode='proxy-on && opencode'