Перейти к основному содержимому

Работа с файлами

1. Текстовые редакторы

a. Vim / Neovim (кроссплатформенный, терминальный)

  • Описание: Мощный модальный редактор с поддержкой плагинов, макросов и скриптов.
  • Установка:
    # Linux (Debian/Ubuntu)
    sudo apt install vim
    # или для Neovim
    sudo apt install neovim

    # macOS (через Homebrew)
    brew install vim
    brew install neovim

    # Windows (через Chocolatey)
    choco install vim
  • Документация: https://www.vim.org, https://neovim.io

b. GNU Nano (терминальный)

  • Описание: Простой редактор для начинающих, встроенный во многие дистрибутивы.
  • Установка:
    sudo apt install nano        # Debian/Ubuntu
    sudo dnf install nano # Fedora/RHEL
  • Документация: https://www.nano-editor.org

c. Visual Studio Code (кроссплатформенный, GUI)

  • Описание: Популярный редактор с поддержкой отладки, расширений и интеграции с Git.
  • Скачать: https://code.visualstudio.com
  • Установка (Linux):
    sudo apt install ./code_*.deb     # после скачивания .deb
    # или через репозиторий
    wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
    sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/
    sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
    sudo apt update && sudo apt install code

d. Sublime Text (кроссплатформенный)

  • Скачать: https://www.sublimetext.com
  • Установка (Linux):
    wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/sublimehq-archive.gpg > /dev/null
    echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
    sudo apt update && sudo apt install sublime-text

2. Бинарные и HEX-редакторы

a. Hexyl (терминальный, Linux/macOS)

  • Описание: Читабельный HEX-вывод бинарных файлов в терминале.
  • Установка:
    cargo install hexyl      # через Rust
    # или
    brew install hexyl # macOS
  • Документация: https://github.com/sharkdp/hexyl

b. GHex (Linux, GUI)

  • Описание: Графический HEX-редактор для GNOME.
  • Установка:
    sudo apt install ghex

c. HxD (Windows)

  • Скачать: https://mh-nexus.de/en/hxd/
  • Особенности: Поддержка редактирования дисков, памяти, файлов.

d. xxd (входит в Vim)

  • Пример:
    xxd file.bin | less

3. Сравнение файлов и папок

a. diff / vimdiff (Unix/Linux/macOS)

  • Пример:
    diff file1.txt file2.txt
    vimdiff file1.txt file2.txt

b. Meld (Linux, Windows, macOS)

  • Описание: Графический инструмент для сравнения файлов и директорий.
  • Установка:
    sudo apt install meld        # Debian/Ubuntu
    brew install --cask meld # macOS
  • Сайт: https://meldmerge.org

c. WinMerge (Windows)

d. Beyond Compare (Windows, Linux, macOS — коммерческий)


4. Архиваторы и упаковщики

a. tar / gzip / bzip2 / xz (Unix/Linux/macOS)

  • Примеры:
    tar -czf archive.tar.gz folder/
    tar -xzf archive.tar.gz

b. 7-Zip (Windows, Linux)

  • Скачать: https://www.7-zip.org
  • Linux (через p7zip):
    sudo apt install p7zip-full
    7z a archive.7z file.txt

c. PeaZip (кроссплатформенный, GUI)

d. Bandizip (Windows/macOS)


5. Файловые менеджеры

a. ranger (терминальный, Linux/macOS)

  • Описание: Консольный файловый менеджер с поддержкой превью.
  • Установка:
    sudo apt install ranger
    brew install ranger
  • Сайт: https://ranger.github.io

b. Midnight Commander (mc) (терминальный)

  • Установка:
    sudo apt install mc

c. Total Commander (Windows)

d. Double Commander (кроссплатформенный, FOSS-аналог)

e. Thunar / Nautilus / Dolphin — стандартные файловые менеджеры в XFCE, GNOME, KDE.


6. Анализ и поиск по файлам

a. ripgrep (rg) — быстрый рекурсивный поиск

b. fd — улучшенная замена find

c. grep / awk / sed — стандартные утилиты фильтрации текста

d. ack / ag (The Silver Searcher) — альтернативы grep для кода


7. Шифрование и подпись файлов

a. GnuPG (gpg)

  • Описание: Стандарт OpenPGP для шифрования и цифровой подписи.
  • Установка:
    sudo apt install gnupg
    brew install gnupg
  • Пример:
    gpg --encrypt --recipient user@example.com file.txt
    gpg --decrypt file.txt.gpg
  • Документация: https://gnupg.org

b. 7-Zip с AES-256

  • Поддерживает шифрование архивов.

c. VeraCrypt — шифрование томов (но применимо и к файлам-контейнерам)


8. Восстановление и мониторинг файлов

a. photorec / testdisk

  • Описание: Восстановление удалённых файлов и разделов.
  • Установка:
    sudo apt install testdisk
  • Сайт: https://www.cgsecurity.org

b. inotify-tools (Linux)

  • Описание: Мониторинг изменений в файловой системе.
  • Установка:
    sudo apt install inotify-tools
  • Пример:
    inotifywait -m /path/to/dir -e modify

c. fswatch (кроссплатформенный)


9. Работа с большими файлами

a. less / head / tail / split

  • Пример:
    less huge.log
    split -l 1000 huge.csv part_

b. vmtouch — анализ кэширования файлов в RAM

  • Установка:
    sudo apt install vmtouch

c. q — выполнение SQL-запросов к CSV-файлам