Skip to content Skip to main navigation Skip to footer

Bash:在linux终端上显示网页内容

在bash shell下,如何获取到HTML网页内容并将其显示在终端屏幕上呢?
你可以使用下面的任何一个工具或者它们的组合来得到网页的内容:
1)curl命令 — 这是可以使用http/https/ftp或者其它的协议获取网页内容的数据传输工具。
2)lynx命令 — 是一个在文本模式下浏览网页内容的网页浏览器。
3)wget命令 — 是一个免费的非交互式从网页上下载数据的工具,支持HTTP/HTTPS/FTP协议。
4)w3m命令 — 也是一个基于文本的网页浏览器
工具安装
在你的linux或Unix操作系统上,上面的工具可能没有被安装,可通过下面的方式:
Debian/Ubuntu linux上安装curl, wget, lynx 和w3m

$apt-get install curl wget lynx w3m
 

Fedora/RHEL/CentOS linux上安装curl, wget, lynx 和w3m

$sudo yum install curl wget lynx w3m
 

FreeBSD Unix 上安装curl, wget, lynx 和w3m
[cc lang=”bash] $sudo pkg_add -v -r curl lynx w3m wget
[/code] 示例
使用curl命令来下载网页页面:

curl http://osetc.com/
curl https://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
 

使用curl并保存输出到一个变量:

tmp="$(curl http://osetc.com/)"
tmp="$(curl https://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html)"
 

lynx 命令示例

lynx -dump www.osetc.com
lynx -dump https://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
 

上面的dump选项会转存默认文档的格式化输出。
wget命令示例

wget -o - http://www.osetc.com
wget -o - https://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
 

将wget的输出赋值给一个变量

tmp="$(wget -O - http://www.osetc.com)"
echo "$tmp"
echo "$tmp" | w3m -dump -T text/html
echo "$tmp" | lynx -dump -stdin
 

w3m命令示例

w3m -dump http://www.osetc.com
w3m -dump https://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
 
0 Comments

There are no comments yet

Leave a comment

Your email address will not be published.