我有一个文件是HTML http://en.wikipedia.org/wiki/HTML,它有大约 150 个锚标记。我只需要这些标签的链接,又名,<a href="*http://www.google.com*"></a>
。我只想得到http://www.google.com http://www.google.com part.
当我运行 grep 时,
cat website.htm | grep -E '<a href=".*">' > links.txt
这会将整行返回给我,它在不是我想要的链接上找到,所以我尝试使用cut http://linux.die.net/man/1/cut命令:
cat drawspace.txt | grep -E '<a href=".*">' | cut -d’”’ --output-delimiter=$'\n' > links.txt
除了它是错误的,而且它不起作用给我一些关于错误参数的错误......所以我假设该文件也应该被传递。也许喜欢cut -d’”’ --output-delimiter=$'\n' grepedText.txt > links.txt
.
但如果可能的话,我想用一个命令来做到这一点......所以我尝试做一个AWK http://en.wikipedia.org/wiki/AWK命令。
cat drawspace.txt | grep '<a href=".*">' | awk '{print $2}’
但这也不会运行。它要求我提供更多意见,因为我还没有完成......
我尝试编写一个批处理文件,它告诉我 FINDSTR 不是内部或外部命令...所以我假设我的环境变量被搞乱了,而不是修复我尝试在 Windows 上安装 grep 的问题,但这给了我同样的错误....
问题是,从其中删除 HTTP 链接的正确方法是什么?HTML http://en.wikipedia.org/wiki/HTML?这样我就会让它适合我的情况。
附:我读过很多链接/Stack Overflow 帖子,显示我的参考文献会花费太长的时间...如果需要示例 HTML 来显示该过程的复杂性,那么我将添加它。
我还有一台 Mac 和 PC,我在它们之间来回切换以使用它们的 shell/batch/grep 命令/终端命令,所以或者 或 都会帮助我。
我还想指出我位于正确的目录中
HTML:
<tr valign="top">
<td class="beginner">
B03
</td>
<td>
<a href="http://www.drawspace.com/lessons/b03/simple-symmetry">Simple Symmetry</a> </td>
</tr>
<tr valign="top">
<td class="beginner">
B04
</td>
<td>
<a href="http://www.drawspace.com/lessons/b04/faces-and-a-vase">Faces and a Vase</a> </td>
</tr>
<tr valign="top">
<td class="beginner">
B05
</td>
<td>
<a href="http://www.drawspace.com/lessons/b05/blind-contour-drawing">Blind Contour Drawing</a> </td>
</tr>
<tr valign="top">
<td class="beginner">
B06
</td>
<td>
<a href="http://www.drawspace.com/lessons/b06/seeing-values">Seeing Values</a> </td>
</tr>
预期输出:
http://www.drawspace.com/lessons/b03/simple-symmetry
http://www.drawspace.com/lessons/b04/faces-and-a-vase
http://www.drawspace.com/lessons/b05/blind-contour-drawing
etc.