为某些行插入序列号和行号



我正在尝试自动执行以下过程:

  1. 在第 1 行插入一个数字 (0001)
  2. 对于接下来的 25 行,插入连续的行号 (1-25) 以及两个空格
  3. 在第 25 行之后,继续从第 1 行开始的下一个序列号 (0002)
  4. 再次执行步骤 2
  5. 在此行号 25 之后,按顺序继续 (0003)
  6. 再次执行步骤 2
  7. 等。
包含

序列号(0001、0002 等)的行将只包含数字,因此我假设需要添加回车符。

在对行进行编号时,是否可以在数字 1-9 之前包含一个空格,以便它们与 10-25 对齐?

所以像...

0001
 1  This is text
 2  Some more text
 ↓
 9  Text here
10  Text here
 ↓
24  Additional text
25  And some more text
0002
 1  Text again
 2  More text
 ↓
 9  Text here
10  Text here
 ↓
24  Additional text
25  And some more text
0003

使用 awk

awk 'FNR%25==1{printf "%04dn",++i;s=1}{print s++,$0}' file

有趣的问题,我得到了这一行,它给出了所需的格式化输出:

awk '{s=(NR-1)%25}!s{printf "%04dn", ++k}{printf "%2d %sn",s+1,$0}' file

相关内容

  • 没有找到相关文章

最新更新