Просмотр файла JSON в Midnight Commander с помощью jq

Так что есть замечательный инструмент для работы с данными JSON, который называется jq.

И есть этот удивительный файловый менеджер Linux под названием mc.

Однажды (сегодня) у меня возникла идея объединить эти два, чтобы я мог легко просматривать файлы JSON в симпатичном / отформатированном виде с помощью сочетания клавиш F3 в Midnight Commander.

Я открыл файл расширения MC, используя CommandEdit extension file действия в меню, а затем добавил следующее в такой открытый файл конфигурации:

# json
regex/\.json$
   View=%view{ascii} jq < %f

Я думал, что это просто, но неожиданно это не работает: попытка просмотреть JSON (F3) приводит к появлению сообщения об ошибке с содержимым jqстраница справки (так же, как при вводе jq само по себе), поэтому начнем с: " JQ - командная строка JSON Processr [версия 1.5]... "

Кто-нибудь может сказать мне, почему эта конфигурация неверна?

3 ответа

Через две минуты после того, как я отправил свой вопрос, мне показали.

Я думал что возможно jq не выдает стандартный вывод... Это привело меня к этому вопросу: как использовать jq в оболочке конвейера? и поэтому я изменил файл расширения, чтобы он выглядел так:

# json
regex/\.json$
    View=%view{ascii} jq '.' < %f

И теперь он работает, как и ожидалось, jq к внутреннему mc Зритель.

Спасибо я;)

Для тех, кто задается вопросом, почему это больше не работает. В версии 4.8.29 МК перешел сmc.extк новомуmc.ext.iniini, который имеет немного другой синтаксис. Новая запись должна выглядеть так

      [JSON]
Regex=\.json$
View=%view{ascii} jq '.' < %f

The [JSON]линия необходима.

Вам не нужно использовать перенаправление < здесь, вы можете использовать просто имя файла %f:

      # json
regex/\.json$
    View=%view{ascii} jq '.' %f

и, как вы упомянули , вы должны использовать простой фильтр: .

Другие вопросы по тегам