当前位置: 首页 > 网络应用技术

Linux三剑客(GREP,SED,AWK)基本使用

时间:2023-03-06 18:47:31 网络应用技术

  作为服务器的后端,您需要熟悉许多命令行操作。它们,GREP,SED和AWK被称为“ Linux三剑手”。他们经常且强大。本文使用实例下的基本用法。首先准备文本文件,命名为内容如下:

  首先,最简单的是,通常用于过滤和查看日志。您需要知道以下常用命令选项:

  输出编号。例如,过滤每行包含“绿色”的记录:

  排除匹配线。例如,排除包含“绿色”的记录:

  支持扩展常规匹配。当GREP时,我们可以根据正则表达式进行匹配,但是当需要定期匹配时,指定-e以生效。“ Qing ICP”,请勿指定-E无法获得所需的结果。

  仅输出匹配文件的名称。有时,我们不需要输出匹配记录,只需要知道与记录记录匹配的文件名:

  -r

  在目录中递归文件的内容。有时,在目录中,我们不知道哪个文件内容包含我们想要的结果。目前,您可以找到整个目录,输出匹配的文件名和行记录:

  根据参数,您可以知道目录中的哪些文件包含匹配项:

  在输出匹配行之后指定额外行之后。例如,如果要输出“绿色”的其他记录,则可以指定:

  通过在输出匹配行之前猜测额外的行。例如,如果要输出其他“绿色”记录,则可以指定:

  通过猜测输出匹配行之前和之后的额外行。例如,如果要输出其他“绿色”记录,则可以指定:

  各种操作的操作需要指定特定的操作。查找您需要指定操作的操作。例如,在打印第三行的记录时,您需要指定行号并添加操作:

  必须在此处指定选项。由于默认行为是遍历文本文件的每一行并输出每行。如果没有选项,一旦默认输出+命令行将指定输出,则第三行将输出两次=:

  因此,角色是取消默认输出行为,该行为通常仅与P.一起使用,我们可以模拟每行的操作,有时在特定方案中非常有用:

  不仅可以输出指定的行,而且可以输出线数范围的输出,例如输出1-5行:

  您还可以根据常规匹配输出特定的行。例如,该格式找到包含“青海省”的记录:

  找到数字0到6的记录:

  找到0结束的记录:

  如果要支持扩展常规匹配,则需要指定它。

  常规匹配还根据该范围支持输出。

  增加了三种类型:

  以上三个添加行为是::

  注意:示例示例的增加将报告MAC上的错误,这可能与MAC上的方法不一致。

  以上所有操作输出都没有更改文件本身的内容。要使操作更改文件本身的内容,您需要指定选项。指定的操作需要小心。

  例如,第一行的第一行插入文件中:

  删除移动作为文件中的第一行:

  当然,我们也有一种方法来进行安全删除操作,并且它将在更改文件内容之前替换文件以备份文件。但是,此操作通常不适合在大文件上应用程序,因为备份非常慢。

  可以更换文件的内容。格式是使用任何三个相同的符号,例如三个斜线,三个数字,三个符号等。效果是替换它。

  这里的符号选择是任意的,可以是三个1、32。上述三种类型通常使用,因为文件内容的内容最小,使用了哪种类型,您需要根据文件内容选择。如果文件内容本身包含/,则使用三个斜线进行操作并不方便。

  这意味着整体替代品。如果没有,它将仅替换匹配的第一个项目:

  反向引用是使用常规组匹配将它们替换为组。

  您可以通过指定行号来输出特定行:

  您也可以根据行号范围输出:

  第二个是无效的行号值,然后在指定开始开始开始的开始之后的所有记录默认为:

  Obering操作仍然支持常规匹配:

  您可以使用列表值:

  在获取列时,默认值是作为分离器的空间,可以通过指定分隔器来指定,例如,第7-8行:

  在删除第7和8行后,将分区分开,分区后的第二列被分开:

  您可以定期指定多个分离器:

  您可以准确删除特定行和特定列的值。例如,某些用途:

  您可以在操作文件的内容之前使用一些命令:

  您可以在操作文件的内容之后使用一些命令:

  原始:https://juejin.cn/post/7100556924524953614