Просмотр файла JSON в Midnight Commander с помощью jq
Так что есть замечательный инструмент для работы с данными JSON, который называется jq.
И есть этот удивительный файловый менеджер Linux под названием mc.
Однажды (сегодня) у меня возникла идея объединить эти два, чтобы я мог легко просматривать файлы JSON в симпатичном / отформатированном виде с помощью сочетания клавиш F3 в Midnight Commander.
Я открыл файл расширения MC, используя Command
→ Edit 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.ini
ini, который имеет немного другой синтаксис. Новая запись должна выглядеть так
[JSON]
Regex=\.json$
View=%view{ascii} jq '.' < %f
The [JSON]
линия необходима.
Вам не нужно использовать перенаправление < здесь, вы можете использовать просто имя файла %f:
# json
regex/\.json$
View=%view{ascii} jq '.' %f
и, как вы упомянули , вы должны использовать простой фильтр: .