// 逐字对比两份抓包里指定下标的消息,打印差异位置。 import { readFileSync } from "node:fs"; const [a, b, idx] = process.argv.slice(2); const get = (file) => JSON.parse(JSON.parse(readFileSync(file, "utf8")).body).messages[Number(idx)].content; const left = get(a); const right = get(b); console.log("ST " + left.length + " 字 / WA " + right.length + " 字"); let i = 0; while (i < Math.min(left.length, right.length) && left[i] === right[i]) i++; console.log("首个差异在 " + i); console.log("ST: " + JSON.stringify(left.slice(Math.max(0, i - 40), i + 60))); console.log("WA: " + JSON.stringify(right.slice(Math.max(0, i - 40), i + 60)));