我有一个文本文件:
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