小编Mr *_*sey的帖子

Bash:在每行后插入一行

所以,我有一个名为“burpfile”的文件。我想在每两行之后添加一个特定的行“peter”。一个示例 burpfil 可以包含:

line1
line2
line3
line4
line5
Run Code Online (Sandbox Code Playgroud)

我希望 bashscript 将其修改为:

line1
peter
line2
peter
line3
peter
line4
peter
line5
peter
Run Code Online (Sandbox Code Playgroud)

为了实现这一点,我尝试了 sed,因为这是这篇文章中的选择:https : //stackoverflow.com/a/45964337/11155582

这是我到目前为止所得到的。但是,由于我不理解 sed,脚本仅在文件末尾插入“peter”。我不知道为什么。


nr=$(wc -l burpfil | awk '{print $1}')

for i in $(seq 0 2 $nr)
do
   sed -e '$i peter' -i burpfil
done
Run Code Online (Sandbox Code Playgroud)

正如代码片段中所见,该命令与我链接到的线程中的内容不同。那是因为在命令中有一个变量不起作用......而且我不知道如何解决它。

regex awk sed

1
推荐指数
1
解决办法
151
查看次数

标签 统计

awk ×1

regex ×1

sed ×1