本文已使用 Google Cloud Translation API 自动翻译。
某些文档最好以原文阅读。
文本处理是任何 Linux 用户或系统管理员的一项重要技能。 sed 流编辑器和 grep 命令系列是 Linux 平台上可用的两个最重要的文本处理工具。在本文中,我们将了解这两种工具并了解它们的一些常见使用方式。
sed 流编辑器是一个功能强大的文本处理工具,可用于执行各种任务,例如搜索和替换、查找和替换以及过滤。
Sed 是一种非交互式文本编辑器,这意味着它可以用于编辑文件而无需在 vi 或 Emacs 等编辑器中打开它们。可以从命令行或 shell 脚本中调用 Sed。
sed 最常见的用途之一是对文件执行搜索和替换操作。以下示例显示如何使用 sed 将文件中出现的所有单词“foo”替换为单词“bar”:
sed 's/foo/bar/g' file.txt
在上面的示例中,“s”命令用于执行搜索和替换。 “/”字符用于分隔搜索和替换字符串。 “g”选项用于指定应替换所有出现的搜索字符串。
sed 的另一个常见用途是查找和替换文件中的字符串。以下示例显示如何使用 sed 查找单词“foo”的所有匹配项并将它们替换为单词“bar”:
sed '/foo/s/foo/bar/g' file.txt
在上面的示例中,“s”命令用于执行搜索和替换。 “/”字符用于分隔搜索和替换字符串。 “g”选项用于指定应替换所有出现的搜索字符串。
Sed 也可以用来过滤文件的内容。以下示例显示如何使用 sed 仅打印包含单词“foo”的行:
sed -n '/foo/p' file.txt
在上面的示例中,“-n”选项用于抑制 sed 的默认输出。 “p”命令用于仅打印与指定模式匹配的行。
grep 命令系列是 Linux 平台上另一个重要的文本处理工具。 grep 命令用于在文件中搜索字符串。 egrep 命令用于在文件中搜索正则表达式。 fgrep 命令用于在文件中搜索固定字符串。
grep 命令用于在文件中搜索字符串。以下示例显示如何使用 grep 在文件中搜索字符串“foo”:
grep 'foo' file.txt
在上面的示例中,“grep”命令用于在文件“file.txt”中搜索字符串“foo”。
egrep 命令用于在文件中搜索正则表达式。以下示例显示如何使用 egrep 在文件中搜索正则表达式“foo”:
egrep 'foo' file.txt
在上面的示例中,“egrep”命令用于在文件“file.txt”中搜索正则表达式“foo”。
fgrep 命令用于在文件中搜索固定字符串。以下示例显示如何使用 fgrep 在文件中搜索固定字符串“foo”:
fgrep 'foo' file.txt
在上面的示例中,“fgrep”命令用于在文件“file.txt”中搜索固定字符串“foo”。
在本文中,我们了解了 sed 流编辑器和 grep 命令系列,这是 Linux 平台上可用的两个最重要的文本处理工具。我们还看到了使用这些工具的一些常见方式。