gpt4 book ai didi

linux - 将多行中的相应字符粘贴在一起

转载 作者:太空宇宙 更新时间:2023-11-04 09:34:49 24 4
gpt4 key购买 nike

我正在编写一个 linux 命令,将多行中的相应字符拼接在一起。例如:我想改变这些行

A---
-B--
---C
--D-

为此:

A----B-----D--C-

到目前为止,我已经做到了:

cat sanger.a sanger.c sanger.g sanger.t | cut -c 1

这只对第一列有用,但它必须对所有列都有效。

有没有人可以帮忙?

编辑:这是一个更好的例子。我想要这个:

SUGAR

HONEY

CANDY

成为

SHC UOA GND AED RYY (without spaces)

最佳答案

更新规范的 Awk 方式

awk -vFS= '{for(i=1;i<=NF;i++)a[i]=a[i]$i}
END{for(i=1;i<=NF;i++)printf "%s",a[i];print ""}' file

输出

A----B-----D--C-

SHCUOAGNNAEDRYY

请注意,对于大文件,这将占用大量内存

不使用 awk 的糟糕方法,你还需要事先知道字段数。

for i in {1..4};do cut -c $i test | tr -d "\n" ; done;echo

关于linux - 将多行中的相应字符粘贴在一起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27801065/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com