split -b 10M -d режет файл, cat parts* > file собирает обратно, и только sha256sum доказывает, что вышло то же самое. Фиксированный суффикс молча теряет данные.
Блог
Блог CliAI
Свежие новости, разборы и инструкции по экосистеме CliAI.
-
2026-07-28
Разрезать большой файл на части и собрать обратно
-
2026-07-25
Посчитать файлы в папке: рекурсивно и по типам
find . -type f | wc -l даёт честный итог, а один конвейер с sed разбивает его по расширениям. Перенос строки в имени файла незаметно завышает счёт.
-
2026-07-23
pg_dump и pg_restore без ловушки версий
pg_dump отказывается работать с сервером новее себя, поэтому сначала подберите версию клиента. Дальше -Fc даёт дамп, из которого pg_restore берёт что нужно.
-
2026-07-20
git bisect: найти коммит, который всё сломал
git bisect run ./check.sh находит первый сломанный коммит без единого ответа руками. Код 0 — хороший, ненулевой — плохой, 125 — пропустить коммит.
-
2026-07-18
Перезапустить сервис и убедиться, что он поднялся
systemctl restart молчит и при успехе, и при провале, поэтому следом нужен systemctl is-active. И помните: на опечатку в имени юнита он тоже отвечает inactive.
-
2026-07-16
netstat: command not found — пользуйтесь ss
netstat жил в пакете net-tools, которого в минимальных системах больше нет. ss -tulpn заменяет netstat -tulpn построчно, а ip route заменяет netstat -r.
-
2026-07-13
Команды Windows и что им соответствует в Linux
dir это ls -l, type это cat, findstr это grep, ipconfig это ip addr, netstat -ano это ss -tulpn. Таблица целиком плюс три привычки, которые ломают первую неделю.
-
2026-07-11
Логи docker забили диск: обрезать и ограничить
truncate -s 0 по LogPath контейнера освобождает место сразу и не ломает docker logs, а rm ломает. Дальше max-size, чтобы файл не вырос заново.
-
2026-07-09
Как проверить DNS-запись командой dig
«Распространение DNS» — это не рассылка, а истечение кешей. Сравните два резолвера через dig и увидите, обновилась ли запись на самом деле.
-
2026-07-06
Копирование файлов по шаблону с сохранением структуры папок
cp --parents и rsync копируют одни и те же файлы в разные деревья назначения: dst/src/a/b/file против dst/a/b/file. Проверено на практике, шаг за шагом.
-
2026-07-04
kubectl get events по времени: сортировка событий
kubectl get events --sort-by='.lastTimestamp' выводит события кластера от старых к новым. События показывают, что кластер сделал с подом — смотрите их раньше логов.
-
2026-07-02
Удалить все слитые локальные ветки git
git branch --merged main показывает слитые ветки, но не видит ветки после squash merge. Смотрите git branch -vv и метку gone, чтобы найти их перед удалением.