首页 > 解决方案 > shell 脚本:将硬编码的超链接转换为通用链接

问题描述

我有很多 html 文件,这些文件有 href 硬编码,这就是为什么当我将它们从 linux 复制到 windows 服务器时,超链接不起作用。我想删除这些硬编码的完整路径。下面是一个示例,所有条目都被屏蔽。

<td align=center> <a href=http://example.com/jenkins/xyz_proj/job/XYZ_abc_item//ws/ABCD_122334/Report_ABCD/errorSummary_AB_type_2/error_abc.plugin.task123files_20181005_23476_234.out/*view*/ target=_blank> 0 </a> </td>

我想删除超链接,使其如下所示。

<td align=center> <a href=Report_ABCD/errorSummary_AB_type_2/error_abc.plugin.task123files_20181005_23476_234.out target=_blank> 0 </a> </td>

请注意,我已经从超链接的开头和结尾删除了字符。

标签: htmlshell

解决方案


使用以下代码从当前目录中的所有 html 文件中删除不需要的文本。

ls *.html | while read i in
do
sed -i 's/\(href=\).*\(Report\)/\1\2/' $i
sed -i 's/\/\*view\*\///g' $i
done

推荐阅读