【问题标题】:I need help coding a simple script in Unix [duplicate]我需要帮助在 Unix 中编写一个简单的脚本 [重复]
【发布时间】:2014-07-11 07:01:55
【问题描述】:

我的 bash shell 需要一些帮助,这对我来说似乎很简单。我希望能够提取给定网站的所有链接并将它们打印到标准输出。我想通过我自己的脚本来完成这一切。我的目标是拥有命令并拥有网站,我将从其中提取所有链接,作为参数。到目前为止,这是我所拥有的:

cat > extract_links

卷曲 $1 | grep

如果这不是一个开始,我真的没有太多的编程经验,很抱歉。有必要使用正则表达式吗?如果有人愿意提供帮助,将非常感谢尽可能简单的代码。谢谢!

【问题讨论】:

  • 用 grep 匹配链接很困难,因为锚标签可以跨越多行。如果你不是一个程序员,我建议你使用现有的工具来做这件事,而不是尝试自己编写脚本。

标签: linux bash shell unix


【解决方案1】:

这是一个单行:

grep 'https?://[\w/&=.?]+' $1

这将找到所有网址。如果通过“链接”你真的是指“锚标签”,这有点棘手,但可行。您没有提供任何示例输入或输出,所以我无法确定您想要什么。

您可以使用正则表达式变得更有趣。这取决于它们如何嵌入到您的文档中

【讨论】:

    【解决方案2】:

    这在 Python 中要容易得多。

    只需使用x = string.find('href="'),并将字符串定义为string[x:],然后运行string.find('"') 并使用该值提取url(print string[x:y])。 把它放到一个while循环中,你应该很高兴

    【讨论】:

      猜你喜欢
      • 2013-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多