获取文本文件中的第 n 列

2023-12-05

我有一个文本文件:

1 Q0 1657 1 19.6117 Exp
1 Q0 1410 2 18.8302 Exp
2 Q0 3078 1 18.6695 Exp
2 Q0 2434 2 14.0508 Exp
2 Q0 3129 3 13.5495 Exp

我想像这样获取每行的第二个和第四个单词:

1657 19.6117
1410 18.8302
3078 18.6695
2434 14.0508
3129 13.5495

我正在使用这段代码:

 nol=$(cat "/path/of/my/text" | wc -l)
 x=1
 while  [ $x -le "$nol" ]
 do
     line=($(sed -n "$x"p /path/of/my/text)
     echo ""${line[1]}" "${line[3]}""  >> out.txt
     x=$(( $x + 1 ))
 done

它可以工作,但是非常复杂并且需要很长时间才能处理长文本文件。

有没有更简单的方法来做到这一点?


iirc :

cat filename.txt | awk '{ print $2 $4 }'

或者,正如评论中提到的:

awk '{ print $2 $4 }' filename.txt
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取文本文件中的第 n 列 的相关文章

随机推荐