Awk 编程:关系与布尔运算符、文件信息处理及格式化输出
1. 关系与布尔运算符
关系和布尔运算符在 Awk 编程中扮演着重要角色,它们允许我们对两个表达式进行比较。
1.1 关系运算符
关系运算符的具体信息如下表所示:
| 运算符 | 描述 |
| ---- | ---- |
| < | 小于 |
| > | 大于 |
| <= | 小于或等于 |
| >= | 大于或等于 |
| == | 等于 |
| != | 不等于 |
| ~ | 匹配 |
| !~ | 不匹配 |
关系表达式可以替代模式来控制特定操作。例如,若要将处理的记录限制为具有五个字段的记录,可使用NF == 5表达式。这里的NF表示每个输入记录的字段数,若该表达式为真,则执行相应操作;否则不执行。
需要注意的是,关系运算符==(等于)与赋值运算符=不同,使用=来测试相等性是常见错误。
我们还可以使用关系表达式在打印记录之前验证电话列表数据库。例如,NF == 6 { print $1, $6 }只会打印具有六个字段的行。
==的相反运算符是!=(不等于),同样,我们可以使用>、<