Тихая грань
Форматы данных, небольшие инструменты и воспроизводимые операции с файлами.
Материалов не найдено.
- CSV
Таблица с разделителем и правилами заключения полей в кавычки.
- TSV
Табличный обмен с табуляцией между полями.
- JSON
Обмен структурированными объектами, массивами и простыми значениями.
- JSON Lines / JSONL
Последовательность самостоятельных JSON-значений по одному на строку.
- NDJSON
Соглашение об обмене JSON-записями через переводы строк.
- YAML
Конфигурация с вложенными структурами, ссылками и комментариями.
- TOML
Конфигурация с явно разделёнными таблицами и скалярами.
- XML
Дерево элементов с атрибутами, пространствами имён и текстом.
- INI
Небольшая конфигурация из секций и пар ключ-значение.
- dotenv
Практическое соглашение о текстовом наборе переменных окружения.
- Markdown
Текстовая разметка документации и заметок.
- Обычный текст
Последовательность символов без обязательной структуры документа.
- HTML
Документ для браузера с семантическими элементами.
- CSS
Правила представления HTML-документа.
- JavaScript source
Исходный код программы на ECMAScript.
- SQL dump
Текст SQL для воспроизведения схемы и данных.
- SQLite
Встраиваемая транзакционная база в переносимом файле.
- GeoJSON
Геометрия и свойства географических объектов в JSON.
- iCalendar / ICS
Обмен календарными событиями и расписаниями.
- vCard
Обмен контактными карточками.
- RSS
XML-лента публикаций, обычно RSS 2.0.
- Atom
XML-формат лент с типизированным содержимым и постоянными ID.
- OPML
XML-обмен иерархическими списками, в том числе подписками на ленты.
- JSON Schema
Описание ограничений для JSON-экземпляров.
- CSVW
Метаданные и схема для табличных данных в CSV.
- Protocol Buffers
Схемный бинарный обмен сообщениями с номерами полей.
- MessagePack
Бинарная сериализация массивов, map и скалярных значений.
- CBOR
Бинарное представление значений с тегами и компактными типами.
- Parquet
Колоночное хранение типизированных таблиц для аналитического чтения.
- Avro
Схемная сериализация записей и объектные контейнеры.
- ZIP
Архив нескольких файлов с каталогом и необязательным сжатием.
- TAR
Последовательный архив файлов и их метаданных.
- gzip
Сжатие байтового потока с CRC32.
- Zstandard
Сжатие потоков с настраиваемыми параметрами и словарями.
- Вычислить SHA-256
Получить отпечаток точных байтов файла.
- Проверить checksums.txt
Сверить файлы с опубликованными отпечатками.
- Атомарно заменить файл
Опубликовать полностью подготовленный файл одним rename.
- Записать через временный файл
Подготовить результат в том же каталоге и опубликовать без перезаписи существующего имени.
- Сравнить текстовые файлы
Показать изменения между двумя версиями.
- Сравнить JSON после нормализации
Игнорировать оформление и порядок ключей, сохранив порядок массивов.
- Форматировать JSON через jq
Получить читаемую копию JSON.
- Проверить JSON
Проверить синтаксис, запретить NaN и повторные ключи.
- Проверить XML
Проверить well-formed XML из доверенного небольшого примера.
- Проверить CSV
Проверить UTF-8, кавычки и одинаковую ширину записей.
- Преобразовать CSV в TSV
Сохранить строки с табуляцией в отдельный файл.
- Преобразовать JSON-массив в JSONL
Записать каждый элемент массива отдельной строкой.
- Объединить JSONL
Склеить проверенные записи, восстановив границы строк.
- Сортировать строки с фиксированной locale
Получить повторяемый байтовый порядок строк.
- Заменить CRLF на LF
Заменить только пары CRLF, сохранив одиночные CR.
- Определить кодировку с оговорками
Проверить BOM и возможность строгого чтения UTF-8.
- Преобразовать UTF-16 в UTF-8
Перекодировать текст с BOM, сохранив переносы.
- Найти NUL-байты
Найти первое нулевое значение байта без загрузки всего файла.
- Создать tar-архив
Собрать дерево input в отдельный TAR.
- Создать воспроизводимый архив
Зафиксировать порядок, время, права и владельцев обычных файлов.
- Распаковать в отдельный каталог
Извлечь TAR с фильтрацией опасных путей.
- Исключить секреты из архива
Собрать архив по разрешённому списку вместо ненадёжного списка исключений.
- Синхронизировать через rsync
Сначала увидеть план, затем обновить копию без удаления лишних файлов.
- Сделать резервную копию SQLite
Снять согласованную копию через SQLite Backup API.
- Проверить целостность SQLite
Проверить структуры БД и отдельно внешние ключи.
- Прочитать dotenv без исполнения
Разобрать намеренно узкое подмножество KEY=value без shell.
- Найти дубликаты по хешу
Сгруппировать обычные файлы с одинаковым SHA-256.
- Проверить свободное место
Оценить запас для результата, временной записи и старой версии.
- Ограничить память обработки
Обработать JSONL построчно с лимитом размера одной записи.
- Вести журнал импорта
Связать результат с хешем источника и версией преобразования.
- Имена файлов как часть интерфейса
Имя связывает файл с человеком, скриптом и следующей версией процесса.
- Границы нормализации
Стабильное оформление полезно, пока не меняет смысл исходных значений.
- Null, пустая строка и отсутствующее поле
Три состояния, которые нельзя объединять без решения предметной области.
- Дата без часового пояса
Календарная дата, местное время и момент времени требуют разных контрактов.
- Стабильная сортировка и определённый порядок
Стабильность алгоритма не заменяет полного правила сравнения.
- Переносы строк без скрытых преобразований
LF, CRLF и последний перевод строки влияют на байты и границы записей.
- Кодировка является частью формата
Расширение файла не сообщает, как превратить байты в символы.
- Контрольные суммы и пределы доверия
Совпадение байтов не устанавливает автора и не проверяет смысл.
- Атомарная публикация статического сайта
Проверенный каталог переключается целиком, а предыдущая версия остаётся для отката.
- Небольшие независимые снимки
Разделение помогает восстановлению, когда границы частей имеют ясный смысл.
- Журнал преобразований
Записывать нужно происхождение и результат, а не только сообщение «готово».
- Проверяемые примеры
Маленький образец должен действительно читаться заявленным инструментом.
- Воспроизводимость без контейнеров
Явные входы, версии и правила записи позволяют повторять небольшой процесс без образа системы.
- Когда SQLite проще набора JSON-файлов
Транзакции и индексы часто уменьшают объём собственной логики синхронизации.
- Когда не следует использовать YAML
Удобство ручного ввода не всегда оправдывает сложность типов и загрузчика.
- Как не опубликовать секреты с примером конфигурации
Образец создают отдельно от рабочего файла и проверяют по разрешённому составу.
Последние обновления
все изменения- Добавлена проверка ссылок, размеров, SHA-256 и воспроизводимости выпуска.
maintenance · 2026-02-21
- В подготовленных материалах отделена проверка синтаксиса от проверки схемы.
correction · 2026-02-21
- Созданы согласованные примеры таблиц, JSON и настоящая база SQLite.
download · 2026-02-21
- Первый выпуск: опубликована заметка «Дата без часового пояса».
content · 2026-02-21
- Первый выпуск: опубликована заметка «Null, пустая строка и отсутствующее поле».
content · 2026-02-21
Часто используемые операции
каталог операций- Вычислить SHA-256
Получить отпечаток точных байтов файла.
- Проверить checksums.txt
Сверить файлы с опубликованными отпечатками.
- Атомарно заменить файл
Опубликовать полностью подготовленный файл одним rename.
- Записать через временный файл
Подготовить результат в том же каталоге и опубликовать без перезаписи существующего имени.
- Сравнить текстовые файлы
Показать изменения между двумя версиями.
Популярные форматы
все форматы- CSV
Таблица с разделителем и правилами заключения полей в кавычки.
- TSV
Табличный обмен с табуляцией между полями.
- JSON
Обмен структурированными объектами, массивами и простыми значениями.
- JSON Lines / JSONL
Последовательность самостоятельных JSON-значений по одному на строку.
- NDJSON
Соглашение об обмене JSON-записями через переводы строк.
- YAML
Конфигурация с вложенными структурами, ссылками и комментариями.
Свежие заметки
все заметки- Имена файлов как часть интерфейса
Имя связывает файл с человеком, скриптом и следующей версией процесса.
- Границы нормализации
Стабильное оформление полезно, пока не меняет смысл исходных значений.
- Null, пустая строка и отсутствующее поле
Три состояния, которые нельзя объединять без решения предметной области.
- Дата без часового пояса
Календарная дата, местное время и момент времени требуют разных контрактов.