Apakah ada alat Bash sederhana yang dapat dengan cepat membuat HTML dasar?

38

Dari waktu ke waktu saya perlu melakukan tugas sederhana di mana saya menampilkan HTML dasar ke konsol. Saya ingin membuatnya diterjemahkan secara minimal, agar lebih mudah dibaca sekilas. Apakah ada utilitas yang dapat menangani rendering HTML dasar di shell (pikirkan rendering gaya Lynx - tetapi bukan browser yang sebenarnya)?

Misalnya, kadang-kadang saya akan meletakkan watchdi mod_statushalaman Apache :

watch -n 1 curl http://some-server/server-status

Output dari halaman adalah HTML dengan beberapa markup minimal, yang ditampilkan di shell seperti:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html><head>
<title>Apache Status</title>
</head><body>
<h1>Apache Server Status for localhost</h1>

<dl><dt>Server Version: Apache/2.2.22 (Ubuntu) PHP/5.3.10-1ubuntu3.15 with Suhosin-Patch</dt>
<dt>Server Built: Jul 22 2014 14:35:25
</dt></dl><hr /><dl>
<dt>Current Time: Wednesday, 19-Nov-2014 15:21:40 UTC</dt>
<dt>Restart Time: Wednesday, 19-Nov-2014 15:13:02 UTC</dt>
<dt>Parent Server Generation: 1</dt>
<dt>Server uptime:  8 minutes 38 seconds</dt>
<dt>Total accesses: 549 - Total Traffic: 2.8 MB</dt>
<dt>CPU Usage: u35.77 s12.76 cu0 cs0 - 9.37% CPU load</dt>
<dt>1.06 requests/sec - 5.6 kB/second - 5.3 kB/request</dt>
<dt>1 requests currently being processed, 9 idle workers</dt>
</dl><pre>__W._______.....................................................
................................................................
................................................................
................................................................
</pre>
<p>Scoreboard Key:<br />
"<b><code>_</code></b>" Waiting for Connection,
"<b><code>S</code></b>" Starting up,
"<b><code>R</code></b>" Reading Request,<br />
"<b><code>W</code></b>" Sending Reply,
"<b><code>K</code></b>" Keepalive (read),
"<b><code>D</code></b>" DNS Lookup,<br />
"<b><code>C</code></b>" Closing connection,
"<b><code>L</code></b>" Logging,
"<b><code>G</code></b>" Gracefully finishing,<br />
"<b><code>I</code></b>" Idle cleanup of worker,
"<b><code>.</code></b>" Open slot with no current process</p>
<p />

Ketika dilihat di Lynx, HTML yang sama ditampilkan sebagai: Status Apache (p1 dari 2) Status Server Apache untuk localhost

   Server Version: Apache/2.2.22 (Ubuntu) PHP/5.3.10-1ubuntu3.15 with Suhosin-Patch
   Server Built: Jul 22 2014 14:35:25
     ________________________________________________________________________________________________________

   Current Time: Wednesday, 19-Nov-2014 15:23:50 UTC
   Restart Time: Wednesday, 19-Nov-2014 15:13:02 UTC
   Parent Server Generation: 1
   Server uptime: 10 minutes 48 seconds
   Total accesses: 606 - Total Traffic: 3.1 MB
   CPU Usage: u37.48 s13.6 cu0 cs0 - 7.88% CPU load
   .935 requests/sec - 5088 B/second - 5.3 kB/request
   2 requests currently being processed, 9 idle workers

_C_______W_.....................................................
................................................................
................................................................
................................................................

   Scoreboard Key:
   "_" Waiting for Connection, "S" Starting up, "R" Reading Request,
   "W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
   "C" Closing connection, "L" Logging, "G" Gracefully finishing,
   "I" Idle cleanup of worker, "." Open slot with no current process
STW
sumber
2
Tidak bashpersis, tetapi periksa Xiki , ia melakukan itu dan banyak lagi
aarosil
xiki terlihat mengagumkan.
MountainX

Jawaban:

50

lynxmemiliki mode "dump", yang dapat Anda gunakan dengan watch:

$ watch lynx https://www.google.com -dump

tangkapan layar output

Dari man lynx:

   -dump  dumps  the  formatted  output  of  the default document or those
          specified on  the  command  line  to  standard  output.   Unlike
          interactive mode, all documents are processed.  This can be used
          in the following way:

          lynx -dump http://www.subir.com/lynx.html

          Files specified on the command line are  formatted  as  HTML  if
          their  names  end  with one of the standard web suffixes such as
          “.htm or “.html”.  Use the -force_html option to  format  files
          whose names do not follow this convention.

Ini pertanyaan Tanyakan Ubuntu memiliki banyak pilihan.

muru
sumber
2
Lynx sangat bagus. itu juga alat yang sangat berguna ketika koneksi Anda sangat buruk dan Anda perlu memeriksa situs untuk sesuatu - tidak ada gambar, skrip atau css yang membuat halaman memuat dengan cepat
jammypeach
12

w3madalah program lain yang memiliki --dumpopsi.

Ini adalah browser web terpopuler Emends.

Steven Edwards
sumber
8

Setidaknya ada dua program bernama html2text( 1 ) ( 2 ) yang melakukan pekerjaan ini.

zwol
sumber
Memang tetapi - jika tersedia - output dari w3mesp jauh lebih indah. untuk tabel.
Suuuehgi
5

elinksmemiliki -dumpmode juga

elinks -dump https://www.google.com
Mohsen
sumber
Lihat juga linksyang elinksdidasarkan. Perintah yang sama berfungsi ...