You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Gmail脚本,忽略以数字1开头的标签标记邮件为已读?

解决方案

你可以借助Gmail搜索语法的通配符*匹配所有以数字1开头的标签,再通过排除规则实现需求。修改后的脚本如下:

var threads = GmailApp.search('is:unread -label:Inbox -label:1*', 0, 100);
GmailApp.markThreadsRead(threads);

关键说明:

  • is:unread:Gmail搜索未读邮件的标准语法(你原脚本里的label:unread也能生效,但is:unread更贴合官方规范)
  • -label:1*:通配符*会匹配"1"开头的任意标签(包括仅为"1"、"123"、"1-work"这类标签),前缀-表示排除这类标签
  • 若要排除多个前缀的标签,比如同时排除以"2"开头的标签,直接追加-label:2*即可

补充提示:

原脚本的第三个参数100限制了单次最多获取100条邮件线程,若未读邮件数量超过100,建议用循环批量处理避免遗漏:

function markUnreadExceptSpecifiedLabels() {
  var pageSize = 100;
  var pageToken = null;
  do {
    var threads = GmailApp.search('is:unread -label:Inbox -label:1*', pageToken, pageSize);
    GmailApp.markThreadsRead(threads);
    pageToken = threads.length < pageSize ? null : GmailApp.getNextPageToken();
  } while (pageToken);
}

内容的提问来源于stack exchange,提问作者Alan Englefield

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 10:52:31