我有很多没有 Google Analytics 代码的静态 html 文件(超过一千个)。
我的挑战是,并非所有 html 文件都没有分析代码。这是应该添加 Analytics 代码的文件的文件夹结构:
用户/[用户 ID]/sites/[站点 ID]/
这些文件夹中有多个 html 文件。我不能简单地对所有 html 文件使用 sed
,因为同一“用户”文件夹中的以下文件已经具有 Analytics js 代码:
user/[用户 ID]/editor/index.html
此外,我的 html 文件以一行结尾。
如何在之前添加 js 代码(即 Analytics)并从进程中排除所有 user/[user ID]/editor/index.html
文件?
最佳答案
使用查找
并排除正确的文件。
find . -type f -regextype sed -regex '.*users/[0-9]*/sites/[0-9]*/.*html' -exec sed -i 's/pattern/replace/g' "{}" \;
您始终可以从该查找中排除文件,例如文件 .*/sites/.*/index.html
:
find . -type f -regextype sed -regex '.*users/[0-9]*/sites/[0-9]*/.*html' -not -name "*index.html" -exec sed -i 's/pattern/replace/g' "{}" \;
关于html - 使用 sed 将分析代码插入到大多数 html 文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30156157/