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

Bash 脚本 admin 6590℃ 0评论

在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

1
$apt-get install curl wget lynx w3m

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

1
$sudo yum install curl wget lynx w3m

FreeBSD Unix 上安装curl, wget, lynx 和w3m

1
$sudo pkg_add -v -r curl lynx w3m wget

示例

使用curl命令来下载网页页面:

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

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

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

lynx 命令示例

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

上面的dump选项会转存默认文档的格式化输出。

wget命令示例

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

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

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

w3m命令示例

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

转载请注明:osetc.com » Bash:在linux终端上显示网页内容

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址