sed - 如何在行范围内执行 sed 替换?

标签 sed

我想 sed 通读一个文本文件,找到一系列特定的数字,然后用另一个数字系列替换它们。

但是,我只希望它针对给定的范围(例如第 200-220 行)执行此操作。
我可以在这里找到关于如何做一个或另一个的页面,而不是两者。

到目前为止,我的尝试如下:

sed -i '200,220 !/1 2 3 4 5 \replacement numbers' file

我可能完全错误地处理了这个问题,但是嘿嘿。

最佳答案

你很近

sed -i '200,220 s/1 2 3 4 5 /replacement numbers/' file

在 200-220 范围内,这将仅用其他内容替换 '1 2 3 4 5 ' 一次(每行)。如果需要更多的替换而不是在此处添加 g ...numbers/g' 文件等等

关于sed - 如何在行范围内执行 sed 替换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30919742/

相关文章:

regex - Sed 使用,删除/更改文本

Bash - 多个替换为 sed 语句

sed - 当sed前面有另一个数字时,如何提取版本号

perl - 用 bash sed 或脚本语言(TCL、perl)替换文件中的字符串

bash - 为什么这个 sed 命令不匹配空格?

csv - 如何为 CSV 文件中的字段添加引号?

linux - 如何在 Linux 中一行编辑文件并将其从一个目录移动到另一个目录?

bash - 使用 shell 脚本在模式匹配后删除或替换文件中的第 n 行

csv - 使用 awk 从 5gb 文件中输出数据

linux - 在 Linux 中的同一文件中执行某些操作后需要添加换行符