База знаний (цифровой суверенитет)
  • Bash - поиск

    Команды BASH
    1 2 4

    A
    951
    0

    Содержание

  • A
    951
    0

    Поиск файлов через терминал


    Вот актуальный на 2025 год набор команд для поиска файлов в Linux — от самых быстрых до самых мощных. Работает везде: Ubuntu, Debian, Fedora, Arch, Alpine, macOS.

    Топ-10 команд, которые реально используют в 2025

    # 1. Самая быстрая и красивая (2025 стандарт)
    fd .drawio$        # или просто fd drawio
    
    # 2. Классика find (всегда работает)
    find /путь -type f -name "*.drawio" 2>/dev/null
    
    # 3. Только в текущей папке (без рекурсии)
    find . -maxdepth 1 -type f -name "*.drawio"
    
    # 4. Поиск по имени без учёта регистра
    find . -type f -iname "*.DrAwIo"
    
    # 5. Найти и сразу открыть в draw.io / diagrams.net
    find . -type f -name "*.drawio" -exec xdg-open {} \;
    
    # 6. Найти все drawio-файлы и показать их размер + дату
    find . -type f -name "*.drawio" -printf '%s %p %TY-%Tm-%Td\n' | sort -nr | head -20
    
    # 7. Искать только в домашних папках (быстро)
    find ~ -type f -name "*.drawio" 2>/dev/null
    
    # 8. Поиск по содержимому файла (внутри .drawio — это XML/JSON)
    rg -g '*.drawio' "Customer Database"
    
    # 9. Самый быстрый аналог find (на Rust)
    fd -e drawio          # ищет только файлы с расширением .drawio
    fd -e drawio -x xdg-open {}   # открыть все найденные
    
    # 10. Через locate (если база обновлена — мгновенно)
    updatedb && locate "*.drawio"
    

    Установка лучших инструментов 2025

    # Ubuntu/Debian/Mint/Pop!_OS
    sudo apt install fd-find ripgrep   # fd и rg
    
    # Fedora
    sudo dnf install fd-find ripgrep
    
    # Arch/Manjaro
    sudo pacman -S fd ripgrep
    
    # macOS
    brew install fd ripgrep
    

    Мои личные алиасы (добавь в ~/.bashrc или ~/.zshrc)

    alias fdraw="fd -e drawio"                    # найти все .drawio
    alias odraw="fd -e drawio -x xdg-open {}"     # открыть все
    alias findbig="find . -type f -size +100M -exec ls -lh {} \;" 
    alias fr="fd"                                 # коротко вместо find
    

    Однострочники для самых частых задач

    # Найти все .drawio за последние 7 дней
    find . -type f -name "*.drawio" -mtime -7
    
    # Найти и удалить все .drawio (осторожно!)
    find . -type f -name "*.drawio" -delete
    
    # Найти .drawio-файлы больше 10 МБ
    find . -type f -name "*.drawio" -size +10M
    
    # Найти по содержимому (например, слово "API")
    rg -g '*.drawio' "REST API"
    

    Итог: запомни всего три команды на всю жизнь

    fd drawio          # 2025 — самый быстрый и удобный
    find . -name "*.drawio"    # классика, работает везде
    rg "слово" -g '*.drawio'   # поиск внутри файлов
    

    Больше никогда не используй find без fd — в 2025 году fd и rg — это то, чем пользуются все профи.