3.5. 命令行语法——第一部分

未匹配的标注

命令行语法——第一部分

调用 sed 和 awk 的方法几乎是相同的,命令行语法如下:

command [options] script filename

就像几乎所有 UNIX 程序,sed 和 awk 能从标准输入接收输入,然后将输出发送到标准输出。如果指定 filename,输入就从那个文件中提取。输出包含了被处理的信息。标准输出是显示屏,通常这些程序的输出定向到那里。也可以使用 shell 中的 I/O 重定向将输出发送到文件,但绝不能发送到向程序提供输入的同一个文件。

每个命令的 options 都是不同的。我们会在后面的章节讲解许多这些选项。(关于 Sed 命令行选项的完整列表,可参照附录 A —— sed 快速参考;关于 awk 选项的完整列表,可参照附录 B —— awk 快速参考。)

script 指定要执行的操作。如果被指定在命令行上,假如脚本包含空格或者其他可能会被 shell 解释的任何字符——比如 $ 或者 *,那么这个脚本就必须用单引号括起来。

Sed 和 awk 有一个共同的选项 -f,允许你指定一个脚本文件的名称。随着脚本体积增大,将它放在文件里是很方便的。因此你可能像下面这样调用 sed:

sed -f scriptfile inputfile

图2-1显示了 sed 和 awk 的基本操作。每个程序都从输入文件读取,一次一行,拷贝输入的这一行,然后对这个拷贝执行脚本中指定的命令,因此,对输入行的更改不会影响实际的输入文件。

image-20221015164203768

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~