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

macOS环境下如何用Shell脚本给文本每3行前插入递增索引

解决方案

以下方案完全适配macOS原生命令行工具,无需额外安装GNU版本的awk/sed。

方案1:输出修改后内容(不改动原文件)

优先推荐awk实现,逻辑简单直观:

awk 'NR % 3 == 1 {print i++ ":"} 1' 你的文本文件路径

说明:

  • 按每3行一组匹配,NR%3==1对应每组的第一行,如果你实际的组长度不是3,修改数字3即可
  • 匹配到组首行时,先打印从0开始递增的索引+冒号
  • 末尾的1是awk默认打印所有原始行的固定写法

方案2:直接修改原文件

macOS原生awk没有内置原地修改参数,用临时文件中转的方式兼容性最好:

awk 'NR % 3 == 1 {print i++ ":"} 1' 你的文本文件路径 > tmp_swap_file && mv tmp_swap_file 你的文本文件路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 15:24:04