我有一个文件,file内容如下:
stringa 8.0.1.2 stringx
stringb 12.01.0.0 stringx
Run Code Online (Sandbox Code Playgroud)
我必须从字段 2 中获取子字符串(前两个带点的值)。我目前正在做cat file | awk '{print $2}' | awk -F. '{print $1"."$2}'并得到预期的输出:
8.0
12.01
Run Code Online (Sandbox Code Playgroud)
我怎样才能用一个 AWK 来做到这一点?
我尝试过使用 match(),但我没有看到向后引用的选项。
你可以做这样的事情。
awk '{ split($2,str,"."); print
Run Code Online (Sandbox Code Playgroud)
输出:
str[1]"."str[2] }' file
8.0
12.01
Run Code Online (Sandbox Code Playgroud)
另外,请记住,cat不需要您的。只需将文件直接提供给awk.