出于解析目的,我需要在命令行内根据另一列的字符数将第一列的内容拉伸(stretch) n 次。
注意: Col2 包含混合类型:<>,.[A-Za-z]
我应该像这样:
cat myFile.tsv
Col1 Col2
Text1 XXXX
Text2 XX
Text3 XXX
进入此:
cat myNewFile.tsv
Col1
Text1
Text1
Text1
Text1
Text2
Text2
Text3
Text3
Text3
您有什么有效的建议吗? 谢谢你:D!!
最佳答案
使用 awk:
awk 'NR==1{print $1; next} {for(i=1; i<=length($2); i++){print $1}}' file
NR
is current row number.
输出:
Col1 Text1 Text1 Text1 Text1 Text2 Text2 Text3 Text3 Text3
关于awk - 如何根据另一列的长度(使用 awk)将一列的内容拉伸(stretch) n 倍?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62296600/