gpt4 book ai didi

awk - 将多个 awk 命令与不同的分隔符组合在一起

转载 作者:行者123 更新时间:2023-12-02 08:34:10 25 4
gpt4 key购买 nike

我连续运行两个 awk 命令以根据多个定界符分解字符串。我想知道是否可以将它们组合成一个命令。

输入数据(jot -w "some string, this is number "10):

some string, this is number 1
some string, this is number 2
some string, this is number 3
some string, this is number 4
some string, this is number 5
some string, this is number 6
some string, this is number 7
some string, this is number 8
some string, this is number 9
some string, this is number 10

这只是示例数据,但我希望能够首先根据逗号拆分字符串,然后从第二部分中提取数字(第四个单词)。实际上,字符串第一部分中的空格数可能会有所不同,即以下内容将是有效输入:

some string, this is number 1
some string with more spaces, this is number 2

下面的命令工作正常:

$ jot -w "some string, this is number " 10 | awk -F ',' '{print $2}' | awk -F ' ' '{print $4}'
1
2
3
4
5
6
7
8
9
10

有什么简单的方法可以将这两个命令合并为一个命令吗?

最佳答案

split() 函数可以让你这样做:

awk '{split($0,a,",");split(a[2],b," ");print b[4];}'

关于awk - 将多个 awk 命令与不同的分隔符组合在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23472961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com