想象一下,如果你有这样的字符串
Amazon.com Inc.:181,37:184,22
然后你awk -F':' '{print $1 ":" $2 ":" $3}'
然后输出相同的东西。
但是,您是否可以在此示例中声明$2
,因此它仅输出181
而不是,37
?
提前致谢!
答案 0 :(得分:1)
您可以使用括号表达式更改字段分隔符,使其包含:
或,
:
awk -F'[:,]' '{ print $2 }' file
如果您担心,
可能会出现在第一个字段中(这会破坏此方法),您可以使用split
:
awk -F: '{ split($2, a, /,/); print a[1] }' file
这会在逗号上拆分第二个字段,然后打印第一个部分。包含逗号的任何其他字段不受影响。