Fork me on GitHub

Shell 入门(三):sed,awk,grep

2.6.1 sed

  • sed 是一种在线的,非交互式的流编辑器(stream editor)。
    • 非交互式:指使用sed只能在命令行下输入编辑命令来编辑文本,然后再屏幕上查看输出;
    • 流编辑器:指sed每次只从文件(或输入)读入一行,然后对该行进行指定的处理,并将结果输出到屏幕,接着读入下一行。
  • sed一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区(pattern space)中的内容,处理完成后,把缓冲区(pattern space)的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。

2.6.2 awk

  • awk 是一种编程语言,用于在 Linux/Unix 下对文本和数据进行处理。数据可以来自标准输入,一个或多个文件,或其他命令的输出。
  • 内置变量:
    • FS: 列分隔符,指定每行文本的字段分隔符,默认为 空格或tab。与 "-F" 作用相同;
    • NF: 当前处理行的字段个数
    • NR: 当前处理行的行号
    • $0:当前处理行的整行内容
    • $n: 当前处理行的第 n 个字段(第 n 列)
    • RS: 行分隔符

TODO:待完善


参考链接:

posted @ 2021-07-26 22:35  小a的软件思考  阅读(62)  评论(0编辑  收藏  举报