linux - Preg 替换 ../../使用 linux 命令 sed 和 xargs

标签 linux bash sed preg-replace

使用linux命令sed和xargs预替换../../并替换该文件夹以及当前文件夹的子文件夹中的所有文件

我有很多通过这种方式链接的文件

<link rel="pear-icon" sizes="100" href="../../pear.png" />
<link rel="photo-icon" sizes="100" href="../../photo.png" />

还有很多其他的。

我想用 sed xargs 替换它们并删除

../../

让它成为

<link rel="pear-icon" sizes="100" href="pear.png" />
<link rel="photo-icon" sizes="100" href="photo.png" />

我该如何实现它。感谢您的帮助

最佳答案

您可以使用下面的正则表达式来替换 ../../

$ sed 's/..\/..\///g' /tmp/file 
<link rel="pear-icon" sizes="100" href="pear.png" />
<link rel="pear-icon" sizes="100" href="photo.png" />

关于linux - Preg 替换 ../../使用 linux 命令 sed 和 xargs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27041531/

相关文章:

java - Maven/IntelliJ/Yosemite 安装问题

linux - 运行 shell 脚本时 sh -x vs bash -x

bash - 在终端中格式化输出,删除空行并转换逗号

linux - sed 命令的语法

linux - 使用 bash 从文本文件中提取单词

c++ - 以编程方式告诉 PDCurses 使窗口与物理屏幕大小相同的方法?

linux - Yocto如何生成这些/etc/limits文件

linux - 无法运行与 libc 链接的可执行文件

linux - alarm(2) - 当有人在等待时更改系统时间时它会做什么?

linux - 如果命令指定输出文件,如何使用管道