Bash:在linux终端上显示网页内容
August 20, 2013
在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