当前位置: 首页 > 面试题库 >

使用sed在行范围之间查找并替换文件中的文本

盖锐
2023-03-14
问题内容

我有一个大文本文件(URL.txt),我希望使用一个 sed 命令执行以下操作:

  1. 查找行号19和33之间的文本“ google”并将其替换为“ facebook”。

  2. 在终端上显示输出而不更改原始文件。


问题答案:

您可以使用SED的范围选择器:

sed '19,33{s/google/facebook/}' file

这将在19(不含)和33(含)之间的行上进行替换

请注意,这只会替换google每行的第一次出现,您可以使用g-modifier更改此行为:

s/google/facebook/g


 类似资料:
  • 问题内容: 我有一个大约40万行的文本文件。我需要将此文本文件导入一个程序,该程序仅接受以空格或制表符分隔的文本文件,但是此文本文件以分号分隔。我要从(Arcmap)导出文本文件的程序中没有选项来更改分隔,并且在文本文件本身中进行查找和替换实际上需要2天。 我已经搜索了一个脚本来执行此操作,但是它们似乎都用空格替换了单词文件的整个LINE,而不是单独替换了每个分号,而给我留了一个空的文本文件。 这

  • 所以我必须写一个程序,找到给定范围之间的所有回文数。程序必须使用numDigits()方法,该方法接受int数并返回该int的位数。 一个isPalindrome()方法,它将接受一个int数字,并返回一个布尔值true或false,无论该数字是否回文 我在这里编码了一个numDigit()方法: 我知道如何用另一种方法找到回文,但作业是专门针对这种技术的。我如何实现这个numDigit()方法来

  • 问题内容: 如何使用Java在多个文本文件中查找和替换单词? 这是我一次做的方法… 问题答案: 从Commons IO使用:

  • 问题内容: 我正在运行Python 2.7。 我有三个文本文件:,,和。现在,包含我要搜索的几行并将该部分替换为中的内容。这是一个简单的示例: data.txt find.txt replace.txt 所以,在上面的例子中,我要搜索的所有出现,以及在数据和更换这些线路。 我在使用正确的方法时遇到了一些麻烦,因为我的内存大约为1MB,所以我想尽可能地提高效率。一种愚蠢的方法是将所有内容连接成一个长

  • 问题内容: 我有一个文件“ test.txt”,其中包含以下内容 我要做的是将它们替换为: 但是为什么这段代码不起作用? 什么是正确的方法? 问题答案: 使用代替。并添加标志以替换所有内容。

  • 问题内容: 我有一个文件(更具体地说是一个log4j配置文件),我希望能够读取该文件并在代码中挑选出某些行并替换它们。例如,在文件中,有一串文本,指示文件的存储目录或记录器的级别。我希望能够替换这些文本字符串而无需读入文件,将其写入另一个文件以及删除原始文件。有没有一种使用Java来查找和替换文件中文本的更有效方法? 这是我尝试使用的文本文件的示例: 我希望能够读取文件并将’DEBUG’替换为另一