2017-10-16 31 views
0

我正在编写应该下载html页面的bash脚本,并从该页面提取所有pdf文件的链接。使用bash打印所有pdf文件的链接

我不得不说,我是新手来打击所以现在我只能grep所有包含<a href的行,然后grep这些行有pdf字。

我可以barelly使用awk但我不知道怎么写正确的正则表达式来获得<a href="*.pdf">只有文字,我想有*.pdf

编辑:grep "<a href=\"*.pdf\""没有找到pdfs的所有链接,这怎么可能?例如找不到<a href="lorem ipsum.pdf">...</a>

回答

1

试试这一行到整个html字符串。为我完美工作。

grep -io "<a[[:space:]]*href=\"[^\"]\+\.pdf\">" | awk 'BEGIN{FS="\""}{print $2}'