awk简介与学习笔记收集第3/3页

首先,awk是一种经典的的文本处理工具,使用广泛。为了更好地掌握awk,我们需要了解其基本原理以及常用的语法。

一、基本原理

awk其实是一种编程语言,它的基本原理就是从文件或输入流一行一行地读取数据,然后按照指定的规则进行处理。这里的规则是指一个程序或脚本,也就是awk语言的代码。

二、常用语法

  1. 基本语法

awk程序的基本格式如下:

awk '条件1{动作1} 条件2{动作2} 条件3{动作3} ...' 文件名

解释一下这个语法:

  • awk是命令名称;
  • 条件和动作都是可选的;
  • 每个条件可以对应一个或多个动作;
  • 条件可以是正则表达式,也可以是比较运算符等。

  • 内置变量

awk还有一些内置变量,这些变量可以用在awk程序中,常用的内置变量如下:

  • $0:表示整行内容;
  • $1、$2、$3 等:表示当前行的第1列、第2列、第3列……;
  • NF:表示当前行的总列数;
  • NR:表示当前行的行号;
  • FS:表示列分隔符,默认为“空格”符;
  • RS:表示行分隔符,默认为“回车”符。

  • 示例说明

示例1:筛选出文件中包含“hello”的行。

代码如下:

awk '/hello/' file.txt

解释一下这个代码:其中的“/hello/”是一个正则表达式,表示文件内容中包含“hello”的行。所以此代码的意思是:在file.txt文件中筛选出包含“hello”的行。

示例2:统计文件有多少行、多少字符、多少单词。

代码如下:

awk '{lines++} {chars+=length($0)} {words+=NF} END{print "总行数:" lines; print "总字符数:" chars; print "总单词数:" words}' file.txt

解释一下这个代码:当awk命令执行时,每一行都会按顺序执行三段代码:第一段将行数加1,第二段将字符数累加,第三段将单词数累加。最后,使用END语句输出总行数、总字符数和总单词数。

三、学习笔记收集

笔者收集了一些关于awk的学习笔记,以下是其中的几条:

  • awk内置函数:gsub、match、substr、split 等;
  • awk运算符:算术运算符、比较运算符、逻辑运算符等;
  • awk实践技巧:如何匹配文本中的一段特定字符串;
  • awk的常见错误:打印内容不对、拼写错误等。

以上就是awk的简介及学习笔记收集。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:awk简介与学习笔记收集第3/3页 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • php实现简单洗牌算法

    可以通过下面的步骤来实现简单的洗牌算法。 基本思路 生成一个数组,包含待打乱的元素。 循环每个元素,随机交换它和数组中的另一个元素。 循环结束后,数组元素的顺序已被打乱。 代码实现 function shuffle_array($arr) { $len = count($arr); for ($i = 0; $i < $len; $i++) { $ra…

    PHP 2023年5月23日
    00
  • PHP的宝库目录–PEAR

    PHP的宝库目录PEAR是PHP的一个常用扩展包管理工具,类似于其他语言的包管理器,它可以良好地管理PHP扩展包的依赖关系、版本以及安装和卸载等功能。下面是使用PEAR的详细攻略: 安装PEAR 首先需要确认系统中是否已安装PEAR。可以在终端中执行 pear version 命令来检查。 如果没有安装,可以通过以下过程安装。 Windows 对于Windo…

    PHP 2023年5月23日
    00
  • PHPCMS2008图文安装教程详解

    PHPCMS2008 图文安装教程详解 简介 PHPCMS2008 是一款基于 PHP 语言和 MySQL 数据库的内容管理系统,具有易用、高效、安全等优点。本文将介绍 PHPCMS2008 的安装过程,包括下载、上传、配置等步骤,帮助读者快速搭建自己的 PHPCMS2008 系统。 步骤 1. 下载 PHPCMS2008 访问 PHPCMS2008 官网(…

    PHP 2023年5月24日
    00
  • PHP实现简单日历类编写

    下面详细讲解一下“PHP实现简单日历类编写”的完整攻略。 1. 确定需求和功能 在开始编写代码之前,我们需要确定日历类的基本需求和功能,一般来说,一个简单的日历类至少需要实现以下功能: 显示当前月份的日历 支持翻到上一个月或下一个月 支持选择一个特定日期 2. 创建一个日历类 在PHP中,我们可以创建一个名为Calendar的类来实现上述的日历功能,代码如下…

    PHP 2023年5月27日
    00
  • PHP针对中英文混合字符串长度判断及截取方法示例

    下面是详细讲解“PHP针对中英文混合字符串长度判断及截取方法示例”的完整攻略: 1. 判断字符串长度 在 PHP 中,我们可以使用 mb_strlen() 函数来获取中英文混合字符串的长度。该函数支持多种编码格式,可以正确处理中文、日文等需要多个字节表示的字符。 以下是调用 mb_strlen() 函数的示例代码: // 定义一个中英文混合字符串 $str …

    PHP 2023年5月26日
    00
  • PHP编写RESTful接口

    下面是PHP编写RESTful接口的完整攻略: 1. 了解RESTful API的基本概念 REST(Representational State Transfer)是Web应用程序的一种设计风格,是现代Web应用程序开发中最常用的一种设计理念。RESTful API是基于REST原则设计的API接口,它通过HTTP协议来进行接口请求和响应。 RESTful…

    PHP 2023年5月27日
    00
  • PHP使用函数用法详解

    PHP使用函数用法详解 什么是函数 函数是将一些指令打包起来,以便重用的代码块。在 PHP 中,函数是基本的代码组织单元,允许您将代码块划分为逻辑段。通过给函数名称指定参数列表,可以将数据传递到函数内部。函数可以返回值来提供一个结果。 函数的声明方式 function functionName($parameter1, $parameter2, …) {…

    PHP 2023年5月27日
    00
  • PHP实现文件上传功能实例代码

    下面是“PHP实现文件上传功能实例代码”的完整攻略。 什么是文件上传功能? 文件上传功能就是指将本地计算机中的文件通过网页表单提交到服务端,上传到服务器端进行处理储存的一种功能。在web开发中,经常需要用户上传文档文件、音频、视频、图片等文件。通常,我们使用PHP来实现文件上传的功能。 开始实现文件上传功能 1. 建立HTML表单 首先,我们需要通过HTML…

    PHP 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部