# ════════════════════════════════════════════════════════════ # 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 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 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"' # Использовать 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'