Rendering HTML da una pipe


15

Vorrei essere in grado di generare HTML e poi reindirizzarlo a un programma che lo renderà, qualcosa del genere:

for i in 1 2 3
do
    for j in a b c
    do
        echo "<table border="1"><tr><td>$i</td><td>$j</td></tr></table>"
    done
done | /usr/bin/firefox

Sfortunatamente, Firefox non può eseguire il rendering dei dati inviati dallo stdin. Né può google-chrome. lynxpuò, ma chi vuole usarlo?

Ho provato a creare una pipe denominata, aprendola in Chrome e / o Firefox e quindi eseguendo il piping dei dati su quella, ma il browser non si è aggiornato quando ho inviato i dati attraverso la pipe denominata.

Esistono browser non basati su testo che renderanno html da stdin? L'output non deve necessariamente essere sfarzoso, sono principalmente interessato a rendere i dati delimitati un po 'più leggibili, al volo.

Modificare:

Ho provato a usare la sostituzione del processo di bash, ad esempio firefox <(sh /tmp/tablegen.sh), che non ha funzionato neanche. Nel peggiore dei casi, potrei creare un file temporaneo, renderizzarlo, quindi eliminarlo, ma preferirei una soluzione leggermente più elegante.



Buon collegamento; abbastanza bene ha confermato il mio sospetto che l'uso di un file temporaneo sia l'unico modo per procedere.
Barton Chittenden,

Risposte:


14

Da una delle risposte a questa domanda ho trovato bcat:

NAME

  bcat - browser cat

DESCRIPTION

  The bcat utility reads from standard input, or one or
  more files, and pipes output into a web browser. file
  may be '-', in which case standard input is concatenated
  at that position.

  When invoked as btee, all input is written immediately
  to standard output in addition to being piped into
  the browser.

Ora posso eseguire uno script come questo:

$ python foo.py | bcat

... e il risultante output HTML si apre in una nuova scheda di Firefox!

Su Ubuntu e altre distribuzioni Linux basate su Debian è possibile installare bcatcon questo comando:

$ sudo aptitude install ruby-bcat

Ciao dal 2019, l'installazione sopra non ha funzionato ma sudo gem install bcatha funzionato. :-)
roufamatic,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.