0

今天我被要求列出我们项目中的所有图像文件引用,以帮助删除/修复死引用。

我们在源文件中的所有图像名称都用单引号或双引号 ('image.png'"image.png") 括起来。

为了提取那些我想使用的工具grepsed其他类似的工具,但很公平,我没能想出一些有效的东西。

.png我目前可以通过 grepping 图像文件扩展名( 、等)列出所有包含图像名称的行,.gif但这也会带来与我的搜索完全无关的行。如果每行有几个字符串,我对 sed 的尝试不起作用。

我可能可以自己过滤掉这个列表,但是嘿:这是 linux !所以必须有一个工具来完成这项工作。

你会怎么做?

4

1 回答 1

2

您应该能够使用以下内容提取文件名:

grep -Eo "['\"][^'\"]*\.(gif|png)['\"]"

该选项-o导致grep仅列出匹配项而不是整行。用于tr删除引号:

grep -Eo "['\"][^'\"]*\.(gif|png)['\"]" | tr -d "\"'"
于 2012-10-12T08:28:54.997 回答