sed将某一行插入到其他行前
时间: 2023-09-11 08:08:37 浏览: 46
可以使用sed命令的`i`操作符来实现将某一行插入到其他行前的操作。具体的命令格式如下:
```
sed 'ni\
要插入的内容
' 文件名
```
其中,`n`表示要插入的行号,`\`表示换行符,`要插入的内容`表示要插入的具体内容,`文件名`表示要操作的文件名。例如,将第3行插入到第5行前,可以使用如下命令:
```
sed '3i\
这是要插入的内容
' 文件名
```
这样就会将“这是要插入的内容”这一行插入到第5行前面。
相关问题
使用sed在第33行前插入一行数据
假设你想在文件file.txt的第33行前插入一行数据,可以使用以下命令:
```
sed -i '33i\inserted line' file.txt
```
其中,选项-i表示直接在文件中修改,而不是输出到终端;33i表示在第33行前插入;\inserted line表示要插入的文本内容。执行完毕后,file.txt中的第33行前就会插入一行数据"inserted line"。
sed 给某行开始的位置插入 abc
可以使用以下命令:
```
sed '/^要插入的行开始的关键词/ i abc' 文件名
```
例如,如果要在文件中以 "example" 开头的行之前插入 "abc",可以运行以下命令:
```
sed '/^example/ i abc' 文件名
```
注意,这将在所有以 "example" 开头的行之前插入 "abc"。如果只想在第一行前插入 "abc",可以使用以下命令:
```
sed '1 i abc' 文件名
```