gpt4 book ai didi

bash - 使用awk从文件中读取数据

转载 作者:行者123 更新时间:2023-11-29 09:49:08 25 4
gpt4 key购买 nike

我是 shell 脚本的新手,我正在尝试从以下格式的 txt 文件中读取数据。

A: 1, 2, 3, 4

B: 1,2; 3, 4

这是我的代码:

awk -F':/,/;/ ' '{ echo $2 $3 $4 $5 $5 }' -f 'testread.txt'

我只需要文本文件中的数字。谢谢。

最佳答案

最简单的方法可能就是将字段分隔符设置为“任何非数字的内容”。

[ghoti@pc ~]$ cat input.txt 
A: 1, 2, 3, 4
B: 1,2; 3, 4
[ghoti@pc ~]$ awk -F'[^0-9]+' '{$1=$1; print;}' input.txt
1 2 3 4
1 2 3 4
[ghoti@pc ~]$

$1=$1 位只是强制 awk 使用默认的输出字段分隔符重写 $0

更新:

更明确的输出:

[ghoti@pc ~]$ awk -F'[^0-9]+' '{printf("1=%s 2=%s 3=%s 4=%s 5=%s\n", $1, $2, $3, $4, $5);}' input.txt 
1= 2=1 3=2 4=3 5=4
1= 2=1 3=2 4=3 5=4
[ghoti@pc ~]$

关于bash - 使用awk从文件中读取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9986108/

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