我有一个文件,其中包含由两个空格分隔的三个字段.我需要从文件中获取第三个字段.文件内容如下例所示:
kuldeep Mirat Shakti
balaji salunke pune
.
.
.
Run Code Online (Sandbox Code Playgroud)
我如何获得第三个字段?
要获得第3个字段,假设您没有任何"嵌入空间",只需
awk '{print $3}' file
Run Code Online (Sandbox Code Playgroud)
默认情况下,awk将空格设置为字段分隔符.因此,即使您有2个或更多空格,第3个字段总是3美元.
但是,如果要特定,请指定字段分隔符
awk -F" " '{print $3}' file
Run Code Online (Sandbox Code Playgroud)
如果你有其他选择,那就是Ruby
ruby -F" " -ane 'print $F[2]' file
ruby -ane 'print $F[2]' file
Run Code Online (Sandbox Code Playgroud)
更新:如果您需要在第3天之后获得所有字段,
awk -F" " '{$1=$2=$3=""}1' OFS=" " file # add a pipe to `sed 's/^[ \t]*//'` if desired
ruby -F" " -ane 'puts $F[3..-1].join(" ")' file
Run Code Online (Sandbox Code Playgroud)