分页: 1 / 1

使用wget然后输出到管道,出现断开的管道错误

发表于 : 2016-02-19 14:04
fnuytutd
其中url为“http://www.51ztzj.com/zt/xqxzt/”等类似网址,目的是为了将该页面中的所有图片链接下载。
wget -e robots=off -O- -i url | grep -o -E "<[img|IMG].*src=[\'|\"](.*(\.gif|\.jpg))[\'|\"].*[\/]?>" | sed -r 's/.*"(.+)".*/\1/'

运行之后显示如下:
egao@T420:~/下载$ wget -e robots=off -O- -i url | grep -o -E "<[img|IMG].*src=[\'|\"](.*(\.gif|\.jpg))[\'|\"].*[\/]?>" | sed -r 's/.*"(.+)".*/\1/'
--2016-02-19 13:55:50-- http://www.51ztzj.com/zt/xqxzt/
正在解析主机 www.51ztzj.com (www.51ztzj.com)... 121.9.213.244
正在连接 www.51ztzj.com (www.51ztzj.com)|121.9.213.244|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度: 39736 (39K) [text/html]
正在保存至: “STDOUT”

- 0%[ ] 0 --.-KB/s 匹配到二进制文件 (标准输入)
- 10%[=> ] 4.01K --.-KB/s 用时 0.04s


无法写入 “-” (断开的管道)。


为什么会出现断开的管道?我如果从另外的网站如“www.egaoing.com"就不会出现问题,大部分网站都会出现这个错误?


求大神解惑????

Re: 使用wget然后输出到管道,出现断开的管道错误

发表于 : 2016-02-21 15:37
fnuytutd
自己解决。。。。。部分网站编码不一样的问题。。。

Re: 使用wget然后输出到管道,出现断开的管道错误

发表于 : 2016-03-07 21:21
lilydjwg
grep 发现是二进制文件,默认只报告是否匹配,所以匹配到了就关掉了输入文件而已。