使用bash脚本在文件中添加多行

用户名

使用bash脚本,我试图在文件中插入一行(最终会有4条额外的行,一个接一个)。

我正在尝试通过iiSeymour对线程执行答案:

从特定行开始在文件中插入行

我认为这与dgibbs在他自己的主题中所做的评论相同:

Bash:在文件中的特定位置插入一行

我要在其后插入新文本的行很长,因此我首先将其保存在变量中:

field1=$(head -2 file847script0.xml | tail -1)

我要插入的文本是:

insert='newtext123'

运行时:

sed -i".bak" "s/$field1/$field1\n$insert/" file847script0.xml 

我得到错误:

sed: 1: "s/<ImageAnnotation xmln ...": bad flag in substitute command: 'c'

我也试着按照线程

sed抛出“替换命令中的错误标志”

但是命令

sed -i".bak" "s/\/$field1/$field1\n$insert/" file847script0.xml

仍然给我同样的错误:

sed: 1: "s/\/<ImageAnnotation xm ...": bad flag in substitute command: 'c'

我正在使用Mac OS X 10.5。

知道我在做什么错吗?谢谢!

埃德·莫顿

悲伤,请使用awk。无需担心替换文本中的特殊字符或随机的单字符命令和标点符号。

在这种情况下,您似乎所需要做的就是在第二行之后打印一些新文本,这就是:

$ cat file
a
b
c

$ insert='absolutely any text you want, including newlines
slashes (/), backslashes (\\), whatever...'

$ awk -v insert="$insert" '{print} NR==2{print insert}' file
a
b
absolutely any text you want, including newlines
slashes (/), backslashes (\), whatever...
c

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在WPF XAML文件中添加多行注释?

来自分类Dev

sed命令添加多行bash

来自分类Dev

如何在文件前添加多行

来自分类Dev

如何在UITableViewCell中添加多行

来自分类Dev

在基于日期的AmCharts中添加多行

来自分类Dev

在GGVIS中添加多行图例

来自分类Dev

无法在JEditorPane中添加多行

来自分类Dev

在数组中添加多行

来自分类Dev

在基于日期的AmCharts中添加多行

来自分类Dev

在GGVIS中添加多行图例

来自分类Dev

使用通用名称添加多行

来自分类Dev

使用“转换”添加多行文本

来自分类Dev

使用bash命令添加多个.csv文件

来自分类Dev

如何在文件中追加多行

来自分类Dev

在文件中为变量和条件列的范围添加多行

来自分类Dev

jTable添加多行

来自分类Dev

使用bash脚本编辑多行文本文件

来自分类Dev

Bash 脚本 - 从文件中添加值并减去

来自分类Dev

使用API向Google电子表格中添加多行

来自分类Dev

在laravel中添加多个资产,例如多个样式文件和脚本文件

来自分类Dev

使用.append添加内容并添加多行代码

来自分类Dev

Android向文件内部存储添加多行

来自分类Dev

在vb.net中的datagridview中动态添加多行

来自分类Dev

如何在Bash中的变量中一个接一个地添加多行输出?

来自分类Dev

如何在HeaderDoc中添加多行注释

来自分类Dev

如何使数组以相同的形式在sql表中添加多行

来自分类Dev

在jQuery中的一个循环中添加多行

来自分类Dev

在现有数据框中添加多行

来自分类Dev

如何在Label JavaFX中添加多行