открытие стандартного потока в google-chrome - PullRequest
5 голосов
/ 28 января 2012

У меня есть программа, которая создает HTML-файл в качестве стандартного вывода. Для просмотра в VIM мне просто нужно:

$ foo2html foo | vim -

vim будет запущен с надписью stdin для просмотра. Как только я закрою vim, команда вернется.

Есть ли какая-то комбинация параметров командной строки, которая заставит google-chrome сделать это?

Ответы [ 2 ]

3 голосов
/ 28 января 2012

Нет, я так не думаю. Но вы можете сделать это через временный файл:

TEMPFILE=`tempfile` && foo2html foo > $TEMPFILE && google-chrome $TEMPFILE
2 голосов
/ 29 декабря 2018

Просто используйте URI данных :

# google-chrome
echo '<h1>hello</h1>' | google-chrome "data:text/html;base64,$(base64 -w 0 <&0)"

# firefox
echo '<h1>hello</h1>' | firefox "data:text/html;base64,$(base64 -w 0 <&0)"

# chromium
echo '<h1>hello</h1>' | chromium "data:text/html;base64,$(base64 -w 0 <&0)"

# opera
echo '<h1>hello</h1>' | opera "data:text/html;base64,$(base64 -w 0 <&0)"

# Default browser (in debian systems)
echo '<h1>hello</h1>' | x-www-browser "data:text/html;base64,$(base64 -w 0 <&0)"

Команда base64 доступна из coreutils в системах, подобных Debian

sudo apt-get install coreutils

Если у вас не установлены coreutils или вы не можете установить новые пакеты, вы можете использовать модуль python base64 (практически в любом дистрибутиве есть python)

echo '<h1>hello</h1>' | google-chrome "data:text/html;base64,$(python -mbase64 <&0)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...