Преобразовать info/texinfo в man?

Если вы запускаете брокера (с mosquitto), подпишитесь на тему my/testс

mosquitto_sub -t my/test -v

Затем вы можете опубликовать простые сообщения и посмотреть, что вы получите. Например,

mosquitto_pub -t my/test -m inline

будет отображаться в выводе подписки в виде одной строки

my/test inline

Если все ваши сообщения относятся к этому типу, вы должны просто сделать цикл для вызова вашей функции:

... | pipeTee | while testPipe; do : ; done

, но ваша функция не может использовать cat, иначе она никогда не вернется. Если вы хотите отправлять многострочные сообщения, вам нужно будет заменить catна чтение внутри другого цикла while, который каким-то образом определяет конец сообщения. Например, если вы публикуете с

echo -e 'my multi\nline test' | mosquitto_pub -t my/test -s

вы увидите 3 строки:

my/test my multi
line test
<there is a blank line here>

Пустая строка связана с тем, что echoдобавляет \nк строке. Затем вам нужно будет заменить catна что-то вроде

while read data && [ "$data" != "" ]
do    echo "Got $data"
done

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

0
22.12.2020, 21:10
1 ответ

Вы можете использовать инструментinfo2podinfo2manдля преобразования информационных страниц в справочные страницы. См. пакет Debian для получения исправлений, позволяющих info2manработать с Perl 5.

3
18.03.2021, 22:41

Теги

Похожие вопросы