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

如何使用SED删除文件倒数第二行末尾的逗号?

用sed删除文件倒数第二行末尾的逗号

纯sed通用方案(无需提前统计行数)

直接执行以下命令可预览修改效果:

sed '$!{N;$s/,$//;P;D}' your_file

如果要直接修改文件内容,加上-i参数:

sed -i '$!{N;$s/,$//;P;D}' your_file

命令逻辑说明:

  • $!{...}:仅对非最后一行执行花括号内的操作
  • N:把下一行内容追加到当前模式空间(临时将两行合并处理)
  • $s/,$//:当处理到最后一行时,模式空间内是倒数第二行+最后一行,此时替换掉倒数第二行末尾的逗号
  • P:打印模式空间里的第一行内容
  • D:删除模式空间里的第一行,重新进入循环处理剩余内容

基于行数的方案(快速定位)

先通过wc -l获取文件总行数,再定位到倒数第二行修改:

sed -i "$(($(wc -l < your_file)-1))s/,$//" your_file

命令逻辑说明:

  • wc -l < your_file:统计文件的总行数
  • $(($(...)-1)):计算出倒数第二行的行号
  • 行号s/,$//:对指定行的末尾逗号进行删除替换

效果对比

原文件内容:

}
   "user-account-id": "John",
   "user-account-number": "v1001",
   "user-account-app": "v10.0.0",
   "user-account-dbase": "v10.1.0",
}

修改后内容:

}
   "user-account-id": "John",
   "user-account-number": "v1001",
   "user-account-app": "v10.0.0",
   "user-account-dbase": "v10.1.0"
}

内容的提问来源于stack exchange,提问作者khal-el

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 19:35:29