加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 在文本文件中输入第n列

发布时间:2020-12-14 00:22:42 所属栏目:Linux 来源:网络整理
导读:我有一个文本文件: 1 Q0 1657 1 19.6117 Exp1 Q0 1410 2 18.8302 Exp2 Q0 3078 1 18.6695 Exp2 Q0 2434 2 14.0508 Exp2 Q0 3129 3 13.5495 Exp 我想把每一行的第2和第4个单词都这样: 1657 19.61171410 18.83023078 18.66952434 14.05083129 13.5495 我正在
我有一个文本文件:

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

我想把每一行的第2和第4个单词都这样:

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读