0

Shell脚本批量检查UTM参数保留:3个实战脚本让流量追踪不再漏数据

2026.06.02 | youres | 21次围观

引言:UTM参数丢失的痛点

在网站流量追踪中,UTM参数是区分流量来源的关键。但重定向、CDN跳转、Nginx配置错误等都可能导致UTM参数丢失,让精心设计的营销策略失效。手动检查每个链接既不现实,也效率低下。本文分享3个Shell脚本,帮你批量检查UTM参数是否完整保留。

脚本1:批量检查重定向链中UTM参数是否保留

这个脚本使用curl的-L参数跟随重定向,并检查最终URL中是否还包含UTM参数。

#!/bin/bash
# 批量检查重定向后UTM参数是否保留
# 用法: ./check_utm_redirect.sh url_list.txt

while IFS= read -r url; do
  echo "检查: "
  # 使用curl -L跟随重定向,-w输出最终URL
  final_url=
  
  if [[ "" == *"utm_"* ]]; then
    echo "✓ UTM参数保留: "
  else
    echo "✗ UTM参数丢失: "
  fi
  echo "---"
done <""

运行示例:./check_utm_redirect.sh urls.txt

脚本2:自动验证多个URL的UTM参数传递

这个脚本模拟用户点击,检查从着陆页到转化页的UTM参数是否持续传递。

#!/bin/bash
# 检查UTM参数在会话中是否持续传递
# 检查出站链接的UTM参数

base_url="https://www.youres.cn"
utm_params="?utm_source=blog&utm_medium=email&utm_campaign=test"

echo "测试UTM参数传递..."
curl -s "/" | grep -o "utm_[^&]*" || echo "未检测到UTM参数"

脚本3:生成UTM参数保留状态报告

这个脚本生成CSV报告,记录每个URL的检查结果。

#!/bin/bash
# 生成UTM参数保留状态报告
output="utm_report_.csv"
echo "URL,Final URL,UTM保留状态" > ""

while IFS= read -r url; do
  final_url=
  
  if [[ "" == *"utm_"* ]]; then
    status="保留"
  else
    status="丢失"
  fi
  
  echo ",," >> ""
done <""

echo "报告已生成: "

内链优化

如果你在用Nginx,这些文章可能帮你:

总结

UTM参数丢失是流量追踪中的隐形杀手。通过这3个Shell脚本,你可以批量检查网站的重定向配置,确保每一分营销投入都能准确追踪。建议将脚本加入定时任务,每周自动检查。

版权声明

本文仅代表个人观点。
本文系AI辅助作者原创,未经许可,转载请保留原文链接。

发表评论