在不破坏 sed 的情况下进行 Bash 增量



我需要在每行之前放置序号和{

这是代码

   #!/bin/bash
   i=1;
   sed '
   /{/ i
   'i++'
   ' text.sub

我尝试了i=$(i+1)甚至更多,但它呼应"i=2"或其他东西;

使用 awk:

awk '/{/ { print ++i };1' File

使用 awk 会更简单:

$ cat text.sub
foo
{bar
baz
{qux
$ awk '/{/ {print ++i} {print}' text.sub
foo
1
{bar
baz
2
{qux

如果需要在 shell 中进行算术运算,请使用$(( i++ ))算术扩展语法

相关内容

  • 没有找到相关文章

最新更新