АнглийскийФранцузскийИспанский

Ad


Значок OnWorks

jshon - Интернет в облаке

Запустите jshon в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда jshon, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


джшон - Парсер JSON для оболочки

СИНТАКСИС


джшон - [P | S | Q | V | C | I | 0] [-F путь] - [t | l | k | u | p | a] - [s | n] значение - [e | i | d] показатель

ОПИСАНИЕ


джшон разбирает, читает и создает JSON. Он разработан таким образом, чтобы его можно было максимально использовать из
внутри оболочки и заменяет хрупкие парсеры adhoc, сделанные из grep / sed / awk, а также
тяжеловесные однострочные парсеры на perl / python.

джшон загружает текст json из stdin, выполняет действия, а затем отображает последнее действие на stdout.
Некоторые параметры выводят json, другие выводят сводки в виде простого текста. Поскольку Баш очень
плохие вложенные структуры данных, джшон не возвращает JSON как собственный объект, как типичный
библиотека будет. Вместо джшон сохраняет историю изменений в стеке, и вы управляете
самый верхний элемент JSON.

Действия


Каждое действие представляет собой короткий вариант. Некоторые требуют аргументов. Хотя многие экземпляры
of джшон могут передаваться друг через друга, действия должны быть связаны последовательно, чтобы уменьшить
звонки. Во всех примерах используется этот образец json:

{"a": 1, "b": [true, false, null, "str"], "c": {"d": 4, "e": 5}}
jshon [действия] <sample.json

Для наиболее распространенного использования только для чтения потребуется всего несколько -e действия и один -a в центре
их.

-t (тип) возвращает строку, объект, массив, число, bool, null

jshon -t -> объект

-l (длина) возвращает целое число. Работает только со строкой, объектом, массивом.

jshon -l -> 3

-k (keys) возвращает список ключей, разделенных новой строкой. Работает только на объекте.

jshon -k -> abc

-e индекс
(extract) возвращает значение json по «индексу». Работает только с объектом, массивом. Индекс
массив - целое число.

jshon -ec -> {"d": 4, "e": 5}

-a (поперек) отображает оставшиеся действия по выбранному элементу. Работает только с объектами
и массивы. Несколько -a вызовы могут быть вложенными, хотя на практике это бывает редко.

jshon -eb -a -t -> bool bool нулевая строка

-s ценностное
(строка) возвращает строку в кодировке json. Позже может быть (-i) вставлен в существующий
структуры.

jshon -s "обратная \ косая черта" -> "обратная \\ косая черта"

-n ценностное
(nonstring / number) возвращает элемент json. Позже может быть (-i) вставлен в существующий
состав. Допустимые значения: true, false, null, array, object, целые числа и
плавает. Сокращения t, f, n, [] и {} соответственно также работают.

jshon -n объект -> {}

-u (unstring) возвращает декодированную строку. Работает только с простыми типами: string, int, real,
логическое, нулевое.

jshon -eb -e 3 -u -> str

-p (pop) извлекает последнюю манипуляцию из стека, перематывая историю. Полезный для
извлечение нескольких значений из одного объекта.

jshon -ec -ed -u -p -ee -u -> 4 5

-d индекс
(удалить) удаляет элемент в массиве или объекте. Отрицательные индексы массива будут переноситься
вокруг.

jshon -db -> {"a": 1, "c": {"d": 4, "e": 5}}

-i индекс
(вставить) сложно. Это обратное отрывку. Извлечь помещает подэлемент json
в стеке. Insert удаляет подэлемент из стека и вставляет этот бит json
в более крупный массив / объект внизу. Используйте extract, чтобы погрузиться в дерево json,
delete / string / nonstring, чтобы что-то изменить, и insert, чтобы вернуть изменения в
дерево.

jshon -ea -ia -> исходный json
jshon -s one -ia -> {"a": "один", ...}

Массивы обрабатываются особым образом. Передача целых чисел приведет к вставке значения без
перезапись. Допускаются отрицательные целые числа, как и строка append. Перезаписать
значение в массиве: удалить индекс, -н ​​/ с новое значение, а затем вставьте в индекс.

jshon -eb -d 0 -sq -i 0 -> {"b": "q", false, null, "str"}

НЕМАНИПУЛЯЦИЯ


Есть несколько метаопций, которые напрямую не редактируют json. Вызывайте их не чаще одного раза в
призыв.

-F
(файл) читает из файла, а не из стандартного ввода. Единственный вариант без манипуляций, чтобы взять
аргумент.

-P (jsonp) удаляет обратный вызов jsonp, прежде чем продолжить работу в обычном режиме.

-S (sort) возвращает json, отсортированный по ключу, вместо исходного порядка.

-Q (тихо) отключает отчеты об ошибках в stderr, поэтому вам не нужно добавлять "2> / dev / null"
на протяжении всего вашего сценария.

-V (по значению) включает передачу по значению в стеке истории редактирования. В крайнем случае с
тысячи глубоко вложенных значений, это может привести к джшон работает в несколько раз медленнее
при использовании в несколько раз больше памяти. Однако по стоимости безопаснее, чем по ссылке и
обычно вызывает меньше удивления. По умолчанию включена по умолчанию, потому что нет
рискуют во время операций только для чтения и обычно делают редактирование json более удобным.

jshon -ec -n 7 -id -p -> c ["d"] == 7
jshon -V -ec -n 7 -id -p -> c ["d"] == 5
jshon -V -ec -n 7 -id -ic -> c ["d"] == 7

Доступно -V , изменения должны быть вставлены обратно в стек вручную, а не просто
выскакивая промежуточные значения.

-C (продолжить) о потенциально исправимых ошибках. Например, извлечение значений, которые не
exists добавит null в стек редактирования вместо прерывания. Поведение может измениться в
будущее.

-I (на месте) редактирование файлов. Требуется файл для изменения, поэтому работает только с -F. Это
предназначен для внесения небольших изменений в файл json. При использовании нормальный вывод подавляется
и выписывается нижняя часть стека редактирования.

-0 (нулевые разделители) Изменяет разделитель -u с новой строки на нулевой. Этот вариант
влияет только на -u, потому что это единственный раз, когда новая строка может законно появляться в
вывод.

--версия
Возвращает отметку времени ГГГГММДД и завершает работу.

ДРУГИЕ ИНСТРУМЕНТЫ


джшон всегда выводит по одному полю в строке. Многие инструменты unix предполагают разделение нескольких вкладок
полей в строке. Чтобы исправить это, пропустите вывод через пасту. Однако паста не может
обрабатывать пустые строки, поэтому заполните их заполнителем. Вот пример:

jshon ... | sed 's / ^ $ / - /' | вставить -s -d '\ t \ t \ n'

Это заменяет пробелы на '-' и объединяет каждые три строки в одну.

Появляется все больше и больше инструментов, которые производят вывод в формате json. Часто они используют линейно-ориентированный
Гибрид json / plaintext, где каждая строка является независимой структурой json. К сожалению, это означает
вывод в целом не является допустимым json. Любой цикл, хотя данные построчно
(звонит джшон один раз для каждой строки) или преобразовать его в допустимый массив json. Например:

при чтении строки; do jshon <<< "$ line"; сделано <<(journalctl -o json)

journalctl -o json | sed -e '1i [' -e '$! s / $ /, /' -e '$ a]' | jshon

ГОЛЬФ


Если вы заботитесь об очень коротких однострочниках, аргументы могут быть сжаты, когда это не так.
вызывают двусмысленность. Пример из -p (оп) можно играть в гольф следующим образом:

jshon -ec -ed -u -p -ee -u == jshon -ec -ed -upee -u

Я не рекомендую это делать (это усложняет понимание), но некоторые люди
гольф не смотря на последствия.

ФОРМИРОВАНИЕ JSON


джшон может создать json, передав в качестве ввода пустой объект:

jshon -s one -ia <<< "{}"

АВТОРЫ


джшон был написан Кайл Кин[электронная почта защищена]> с патчами от Дэйва Рейснера
<[электронная почта защищена]>, AndrewF (BSD, OSX, jsonp, сортировка) и Jean-Marc A (solaris).

Используйте jshon в Интернете с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    NSIS: система установки со сценариями Nullsoft
    NSIS: система установки со сценариями Nullsoft
    NSIS (установка с поддержкой сценариев Nullsoft)
    System) является профессиональным открытым исходным кодом
    система для создания установщиков Windows. Это
    спроектирован таким образом, чтобы быть таким же маленьким и гибким
    как возможно ...
    Скачать NSIS: система установки Nullsoft со сценариями
  • 2
    авторизация
    авторизация
    AuthPass - это пароль с открытым исходным кодом
    менеджер с поддержкой популярных и
    проверенный Keepass (kdbx 3.x И kdbx 4.x ...
    Скачать авторизацию
  • 3
    Zabbix
    Zabbix
    Zabbix — это открытый корпоративный класс.
    исходное распределенное решение для мониторинга
    предназначен для наблюдения и отслеживания
    производительность и доступность сети
    серверы, устройства...
    Скачать Zabbix
  • 4
    KDiff3
    KDiff3
    Этот репозиторий больше не поддерживается
    и хранится в архивных целях. Видеть
    https://invent.kde.org/sdk/kdiff3 for
    новейший код и
    https://download.kde.o...
    Скачать KDiff3
  • 5
    USBLoaderGX
    USBLoaderGX
    USBLoaderGX — это графический интерфейс для
    USB-загрузчик Ванинкоко, основанный на
    libwiigui. Он позволяет перечислять и
    запуск игр Wii, игр Gamecube и
    доморощенный на Wii и WiiU...
    Скачать USBLoaderGX
  • 6
    Жар-птица
    Жар-птица
    СУБД Firebird предлагает функции ANSI SQL
    & работает на Linux, Windows и
    несколько Unix-платформ. Функции
    отличный параллелизм и производительность
    & сила...
    Скачать Firebird
  • Больше »

Команды Linux

Ad