6.8Kпросмотров
28.3%от подписчиков
15 марта 2026 г.
statsScore: 7.5K
15 функций Bash, которые стоит добавить в .bashrc
ㅤ
Со временем понимаешь, что половину времени в терминале ты пишешь одно и тоже. Пара небольших функций в .bashrc экономит часы. У каждого эти функции обычно индивидуальны, но возможно этот список раскроет тебе глаза на что-то новое. Создать директорию и сразу в неё перейти mkcd() { mkdir -p "$1" && cd "$1"
} Подняться на несколько уровней вверх up() { local d="" for ((i=1;i<=$1;i++)); do d+="../" done cd "$d"
} Быстро найти файл ff() { find . -type f -iname "$1"
} Найти директорию fd() { find . -type d -iname "$1"
} Найти процесс psg() { ps aux | grep -i "$1" | grep -v grep
} Посмотреть последние команды h() { history | tail -n "$1"
} Поиск по истории hg() { history | grep "$1"
} Узнать размер директории dirsize() { du -sh "$1"
} Универсальная распаковка архивов extract() { if [ -f "$1" ]; then case "$1" in .tar.bz2) tar xjf "$1" ;; .tar.gz) tar xzf "$1" ;; .bz2) bunzip2 "$1" ;; .rar) unrar x "$1" ;; .gz) gunzip "$1" ;; .tar) tar xf "$1" ;; .tbz2) tar xjf "$1" ;; .tgz) tar xzf "$1" ;; .zip) unzip "$1" ;; .7z) 7z x "$1" ;; *) echo "unknown archive" ;; esac fi
} Быстрый HTTP-сервер из текущей папки serve() { python3 -m http.server "${1:-8000}"
} Узнать свой внешний IP myip() { curl -s ifconfig.me
} Узнать IP домена ipinfo() { dig +short "$1"
} Показать открытые порты ports() { ss -tuln
} Полная очистка терминала cls() { clear && printf '\e[3J'
} Безопасный rm rm() { ls -FCsd -- "$@" read -p 'Delete? [y/N] ' ans if [ "$ans" = "y" ]; then command rm -rf -- "$@" fi
} С удалением еще можно сделать аналог корзины, добавив простое копирование в какой-нибудь временный каталог, который автоматически зачищается спустя какое-то время, например в /tmp. The end. Кидай в комменты, какие функции используешь ты, будет полезно. Источник: https://boreal.social/post/15-practical-bash-functions-i-use-in-my-bashrc (обсуждения на реддите) 🛠 #bash
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog