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

Bash 脚本 admin 10698℃ 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
[cc lang=”bash”]
$apt-get install curl wget lynx w3m

[/cc]
Fedora/RHEL/CentOS linux上安装curl, wget, lynx 和w3m
[cc lang=”bash”]
$sudo yum install curl wget lynx w3m
[/cc]

FreeBSD Unix 上安装curl, wget, lynx 和w3m
[cc lang=”bash]
$sudo pkg_add -v -r curl lynx w3m wget
[/cc]

示例

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

[cc lang=”bash”]
curl http://osetc.com/
curl http://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
[/cc]

使用curl并保存输出到一个变量:
[cc lang=”bash”]
tmp=”$(curl http://osetc.com/)”
tmp=”$(curl http://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html)”

[/cc]
lynx 命令示例
[cc lang=”bash”]
lynx -dump www.osetc.com
lynx -dump http://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html

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

wget命令示例
[cc lang=”bash”]
wget -o – http://www.osetc.com
wget -o – http://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
[/cc]

将wget的输出赋值给一个变量
[cc lang=”bash”]
tmp=”$(wget -O – http://www.osetc.com)”
echo “$tmp”
echo “$tmp” | w3m -dump -T text/html
echo “$tmp” | lynx -dump -stdin

[/cc]
w3m命令示例
[cc lang=”bash”]
w3m -dump http://www.osetc.com
w3m -dump http://www.osetc.com/linux-how-to-see-which-port-is-being-used-tcp80.html
[/cc]

转载请注明:OSETC 技术网 » Bash:在linux终端上显示网页内容

喜欢 (0)or分享 (0)

您必须 登录 才能发表评论!