📅  最后修改于: 2023-12-03 14:39:25.044000             🧑  作者: Mango
AWK是一种强大的文本处理工具,具有许多内置函数,可以帮助程序员处理和转换文本数据。在本文中,我们将介绍常见的AWK内置函数及其用法。
printf
函数是一个用于格式化输出的函数,可以将数据打印到标准输出中。它使用类似于C语言的格式化字符串,并取代每个格式转换符(如%d或%s)与传入printf
函数的值。
示例:
awk 'BEGIN {printf "Hello, world! %d\n", 42}'
输出:
Hello, world! 42
length
函数用于获取字符串的长度,可以用于计算字符串中的字符数。
示例:
awk 'BEGIN {len=length("Hello, world!"); print len}'
输出:
13
substr
函数用于截取字符串中的一部分。它接受三个参数:字符串、起始位置和长度。
示例:
awk 'BEGIN {s="Hello, world!"; print substr(s, 3, 5)}'
输出:
llo,
index
函数用于查找一个字符串中的子串并返回其位置。如果子串不存在,则返回0。
示例:
awk 'BEGIN {s="Hello, world!"; print index(s, "world")}'
输出:
8
int
函数用于获取一个数的整数部分。
示例:
awk 'BEGIN {x=3.14159; print int(x)}'
输出:
3
sin
和cos
函数用于计算正弦和余弦的值。
示例:
awk 'BEGIN {print sin(1)}'
输出:
0.841471
length
函数同样也可以用于获取一个数组的长度。
示例:
awk 'BEGIN {a[1]="Hello"; a[2]="world"; print length(a)}'
输出:
2
delete
函数用于删除一个数组元素或整个数组。
示例:
awk 'BEGIN {a[1]="Hello"; a[2]="world"; delete a[2]; print a[2]}'
输出:
getline
函数用于读取下一行文本并存储到指定变量中。
示例:
awk '{getline x; print x}' file.txt
输出:
world
close
函数用于关闭文件。
示例:
awk 'BEGIN {while(getline < "file.txt") print $0; close("file.txt")}'
输出:
Hello
world
This is a test file.
ENVIRON
数组包含系统环境变量的值。
示例:
awk 'BEGIN {print ENVIRON["USER"]}'
输出:
root
以上就是常用的AWK内置函数介绍。程序员可以根据需要使用这些函数来处理和转换文本数据。