使用sed将URL转换为HTML链接?

Mik*_*den 3 html command-line replace sed hyperlink

我想知道是否有可能(建议使用更好的词)使用sed将URL转换为文档中的HTML超链接。因此,它将查找以下内容:

http://something.com
Run Code Online (Sandbox Code Playgroud)

并替换为

<a href="http://something.com">http://something.com</a>
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?电子邮件地址也可以这样做吗?

Jas*_*mbs 5

这可能有效。

sed -i -e "s|http[:]//[^ ]*|<a href=\"\0\">\0</a>|g" yourfile.txt
Run Code Online (Sandbox Code Playgroud)

它取决于URL后跟一个空格(并非总是如此)。

您可以对电子邮件进行类似的处理。

sed -i -e "s|\w+@\w+\.\w+(\.\w+)?|<a href=\"mailto:\0\">\0</a>|g" yourfile.txt
Run Code Online (Sandbox Code Playgroud)

这些可能会让您入门。我建议在进行内联更改之前,不使用-i选项来测试您的输出。