json

json читает, ищет и изменяет вложенный JSON по точечным путям, сохраняя типы значений. После записи документ проверяется и сохраняется как нормализованный JSON.

ДанныеВерсия 1.3.5Стабильная
lil-terminal

Обзор

json работает прямо с вложенным JSON: обращается к узлам по точечному пути, ищет ключи или значения, атомарно записывает значение из строки или файла, проверяет документ и показывает нормализованный JSON — без буфера сессии.

Путь ведёт к узлу, тип остаётся типом

Команда работает со структурой, а не с фрагментом текста. limits.history выбирает один вложенный узел, -w меняет этот путь, а корректные JSON-значения после : остаются числами, логическими значениями, null, массивами или объектами.

Синтаксис

lil-terminal
json <file> [key|options] · json dump <file>

Справочник

json <file>

показать данные JSON

json <file> <key>

показать точное значение по точечному пути

json dump <file>

показать нормализованный исходный текст JSON

-f <text|mask> [-k|-v]

найти совпадения в ключах или значениях; * и ? включают маску

-w <key> : <value>

записать значение прямо в файл

-w <key> < <file>

записать значение, прочитанное из другого файла

-d <key>

удалить значение по точечному пути

-c

проверить корректность файла JSON

Активный файл

В текущем ядре успешно открытый файл сразу становится доступен через $. Если этот модуль — установленный обработчик с наивысшим приоритетом для расширения файла, достаточно ввести только имя файла: ядро направит его в эту команду. Это удобства ядра; явной формой остаётся json <file>.

Поиск

-f ищет по путям и значениям. -k ограничивает поиск ключами, -v — значениями. Если запрос содержит * или ?, он трактуется как маска.

Прямое редактирование

-w сразу записывает изменение в файл. После : задаётся значение в строке, а < <file> читает значение из другого файла. -d удаляет один точечный путь.

Интерактивный пример из `/sandbox/`

Запускайте подготовленные примеры прямо на странице. Результат заранее сформирован и показывается в браузере; команды терминала на сервере не выполняются.

Открыть файл и повторно использовать его через $

Установка и управление

Устанавливайте актуальную совместимую версию. Для полного набора возможностей выбирайте Base, для сокращённого — Minimum; уже установленный модуль обновляет команда upgrade.

Base и Minimum — два пакета одного текущего релиза модуля, а не разные версии команды.

Пакет Base

Установить полный пакет с локальной справкой и всеми опубликованными режимами.

install json
Пакет Minimum

Установить сокращённый пакет без локальной справки; help <cmd> -i открывает актуальную серверную справку.

install json -m
Точная публичная версия

Установить именно эту опубликованную версию.

install json -v 1.3.5
Проверить или обновить

Поручить upgrade проверить совместимость и заменить установленный блок только при необходимости.

upgrade json
Удалить модуль

Удалить блок расширения, не затрагивая ядро и остальные модули.

install json -u

Примеры

Примеры можно копировать, но сайт их не выполняет. Перед запуском на реальном проекте проверьте пути, права и разрушающие флаги.

Открыть файл и повторно использовать его через $
cd \sandbox\config | json app.json
name             lil-sandbox
debug            true
features.0       files
features.1       code
features.2       archives
limits.upload_mb 2
limits.history   25
Показать данные JSON
app.json
name             lil-sandbox
debug            true
features.0       files
features.1       code
features.2       archives
limits.upload_mb 2
limits.history   25
Показать точное значение по точечному пути
json $ limits.history
25
Json · find-key
json $ -f "upload" -k
limits.upload_mb  2
Json · find-value
json $ -f "files" -v
features.0  files
Json · write
json $ -w limits.password : "Ed1g!fs:13od"
limits.password  Ed1g!fs:13od
Json · file-value
json $ -w limits.policy < value.json
limits.policy.rotate    true
limits.policy.attempts  5
Json · delete
json $ -d limits.password
limits.upload_mb  2
limits.history    25
Json · validate
json $ -c
Valid JSON
Показать нормализованный исходный текст JSON
json dump $ > json-review.json -r
{
  "name": "lil-sandbox",
  "debug": true,
  "features": ["files", "code", "archives"],
  "limits": {"upload_mb": 2, "history": 25}
}
Проверить отсутствующий файл
json \sandbox\config\missing.json
Файл не найден

Файл из примера: sandbox/config/app.json

Пример использует файл или каталог из защищённой учебной папки /sandbox/.

{
  "name": "lil-sandbox",
  "debug": true,
  "features": ["files", "code", "archives"],
  "limits": {
    "upload_mb": 2,
    "history": 25
  }
}

Связанная документация

Текущая публичная версия

v1.3.52026-08-11

Единая справка структурированных данных

Просмотр, поиск, запись, удаление и проверка теперь представлены единообразно и компактно.